SQL 表空间与用户管理

SQL 表空间与用户管理学习笔记

表空间和用户管理是 Oracle 数据库管理的重要部分。

1. 表空间管理

表空间是 Oracle 数据库中存储数据的逻辑容器,用于管理数据文件。

(1)创建表空间

1
2
3
4
-- 创建表空间
CREATE TABLESPACE ts_name
DATAFILE 'E:\数据库\Oracle\hello.dbf'
SIZE 50M;
SQL

(2)创建表并指定表空间

1
2
3
4
5
-- 创建表并指定表空间
CREATE TABLE ts_tab (
id INT,
name VARCHAR2(10)
) TABLESPACE ts_name;
SQL

(3)删除表空间

1
2
-- 删除表空间(如果表空间中有数据,需要指定 INCLUDING CONTENTS)
DROP TABLESPACE ts_name INCLUDING CONTENTS;
SQL

(4)查询表空间信息

1
2
-- 查询数据字典中的表空间信息
SELECT * FROM DBA_DATA_FILES;
SQL

(5)修改表空间

1
2
3
4
5
6
7
8
-- 修改表空间大小
ALTER DATABASE DATAFILE 'E:\数据库\Oracle\hello.dbf'
RESIZE 10M;

-- 添加数据文件到表空间
ALTER TABLESPACE ts_name
ADD DATAFILE 'E:\数据库\Oracle\python.dbf'
SIZE 10M;
SQL

2. 用户管理

用户是访问数据库的实体,每个用户都有自己的权限和表空间。

(1)创建用户

1
2
-- 创建用户
CREATE USER python IDENTIFIED BY python;
SQL

(2)删除用户

1
2
-- 删除用户(级联删除用户的所有对象)
DROP USER python CASCADE;
SQL

(3)查询其他用户的表

1
2
-- 查询 scott 用户的 emp 表
SELECT * FROM scott.emp;
SQL

(4)修改用户的默认表空间

1
2
-- 修改用户的默认表空间
ALTER USER python DEFAULT TABLESPACE ts_name;
SQL

(5)锁定和解锁用户

1
2
3
4
5
-- 锁定用户
ALTER USER python ACCOUNT LOCK;

-- 解锁用户
ALTER USER python ACCOUNT UNLOCK;
SQL

3. 综合示例

(1)创建表空间和用户

1
2
3
4
5
6
7
8
9
10
11
-- 创建表空间
CREATE TABLESPACE ts_name
DATAFILE 'E:\数据库\Oracle\hello.dbf'
SIZE 50M;

-- 创建用户并指定默认表空间
CREATE USER python IDENTIFIED BY python
DEFAULT TABLESPACE ts_name;

-- 授予用户权限
GRANT CONNECT, RESOURCE TO python;
SQL

(2)修改表空间

1
2
3
4
5
6
7
8
-- 修改表空间大小
ALTER DATABASE DATAFILE 'E:\数据库\Oracle\hello.dbf'
RESIZE 10M;

-- 添加数据文件到表空间
ALTER TABLESPACE ts_name
ADD DATAFILE 'E:\数据库\Oracle\python.dbf'
SIZE 10M;
SQL

(3)锁定和解锁用户

1
2
3
4
5
-- 锁定用户
ALTER USER python ACCOUNT LOCK;

-- 解锁用户
ALTER USER python ACCOUNT UNLOCK;
SQL

4. 总结

  1. 表空间管理:创建、修改和删除表空间。
  2. 用户管理:创建、删除、锁定和解锁用户。
  3. 权限管理:授予用户表空间操作权限。

SQL 表空间与用户管理
https://blog.pangcy.cn/2018/09/27/数据库相关/Oracle/SQL 语法/SQL 表空间与用户管理/
作者
子洋
发布于
2018年9月27日
许可协议