數據庫—— Oracle表空間和用戶管理

Oracle表空間和用戶管理

一、表空間管理

1、創建表

SQL> create tablespace tbs_work         //創建一個自動增長表空間tbs_work
  2  datafile '/u01/app/oracle/oradata/orcl/worktbs01.dbf'         //數據文件名爲worktbs01.dbf,且位於‘’
  3  size 10M autoextend on;         //大小自動擴展到10M

表空間已創建。

2、調整表空間大小

1、更改數據文件的大小

SQL> alter database datafile         //修改數據
  2  '/u01/app/oracle/oradata/orcl/worktbs01.dbf'         //數據文件路徑
  3  resize 80M;         //更改數據文件大小爲80M

數據庫已更改。

2、向表空間內添加數據文件

SQL> alter tablespace tbs_work         //修改表空間tbs_work
  2  add datafile '/u01/app/oracle/oradata/orcl/worktbs02.dbf'         //添加數據文件worktbs02.dbf
  3  size 20M autoextend on;         //大小自動擴展到20M

表空間已更改。

3、改變表空間的讀寫狀態

SQL> alter tablespace tbs_work read only;         //使表空間只讀

表空間已更改。

SQL> alter tablespace tbs_work read write;         //使表空間可讀寫

表空間已更改。

4、刪除表空間

SQL> drop tablespace tbs_work including contents;         //刪除表空間

表空間已刪除。

二、CDB與PDB的基本操作

1、連接CDB以及相關的查詢

SQL> show con_name         //查詢當前所在的容器

CON_NAME
------------------------------
CDB$ROOT         //代表當前在CDB下面
SQL> show pdbs;         //查詢數據庫的所有容器

    CON_ID CON_NAME			  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
	 2 PDB$SEED			  READ ONLY  NO
	 3 ORCLPDB			  MOUNTED         //狀態爲mounted(並沒有open)
SQL> alter pluggable database orclpdb open;         //CDB下修改可插拔庫orclpdb爲打開狀態

插接式數據庫已變更。

SQL> alter session set container=orclpdb;         //在CDB下切換會話到PDB中

會話已更改。

SQL> show con_name         //查看當前位置已經位於ORCLPDB中

CON_NAME
------------------------------
ORCLPDB

2、從CDB切換到PDB以及相關操作

SQL> shutdown immediate         //在PDB中關閉可插拔數據庫
插接式數據庫已關閉。
SQL> startup         //在PDB中打開可插拔數據庫
插接式數據庫已打開。
SQL> alter session set container=cdb$root;         //切換會話到CDB中

會話已更改。

SQL> show con_name         //查看當前位置

CON_NAME
------------------------------
CDB$ROOT

三、用戶管理

SQL> create user c##zhangsan         //創建zhangsan的用戶(在PDB中創建用戶(不需要加c##))
  2  identified by pwd123         //密碼
  3  default tablespace tbs_work         //默認表空間
  4  temporary tablespace temp         //臨時表空間
  5  quota unlimited on tbs_work         //對默認表空間使用沒有限制
  6  password expire;         //第一次登錄需要改密碼

用戶已創建。

SQL> alter user c##zhangsan identified by 123456;         //修改用戶的密碼

用戶已更改。

SQL> drop user c##zhangsan cascade;         //刪除c##zhangsan用戶

用戶已刪除。

四、數據庫權限管理

SQL> grant connect,resource to c##zhangsan;         //授予c##zhangsan用戶的connect和resource兩角色

授權成功。

SQL> conn c##zhangsan/123456         //驗證權限
已連接。
SQL> create table teacher(id int,name varchar(10)); 

表已創建。

SQL> insert into teacher values (1,'tom');         

已創建 1 行。

SQL> select * from teacher;

	ID NAME
---------- ------------------------------
	 1 tom

SQL> revoke connect,resource from c##zhangsan         //撤銷c##zhangsan用戶的權限

撤銷成功。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章