達夢數據庫簡單實用實例

達夢數據庫簡單實用實例

一、在中標麒麟操作系統中安裝達夢數據庫(中標麒麟操作系統以及達夢數據庫安裝包可在其對應官方網站中獲取)

(題外話,畢竟是在中標麒麟操作系統上做操作,所以常用的linux命令還是要懂點的^_^ ;(mkdir useradd groupadd passwd chmod chown ls cp))

二、安裝完數據庫之後,如何使用達夢數據庫?下面就這點記錄了這次操作的簡單步驟(關於表空間以及用戶的一些常見操作示例)

表空間:

A.創建表空間
案例1:
創建一個表空間tbs,數據文件存放到$DM_HOME/data/DB_NAME中,初始文件大小爲31M。
錯誤:SQL> create tablespace tbs datafile '/dm7/data/DAMENG/TBS.dbf' SIZE 31;
初始文件的大小是page的4096倍。
案例2:
創建一個表空間tbs2,要求2個數據文件,分別存放到不同的disk上,初始大小爲32M,單個文件大100M。
SQL> create tablespace tbs2 datafile '/dm7/data/DAMENG/disk1/TBS2_1.dbf' size 32 autoextend on maxsize 100,'/dm7/data/DAMENG/disk2/TBS2_2.dbf' size 32 autoextend on maxsize 100;
找出表空間的可用大小?
SQL> select tablespace_name,bytes/1024/1024 from dba_free_space where tablespace_name='TBS2';
未指定擴展的大小是多少?
SQL> select page;
SQL> select sf_get_extent_size();
案例3:
規劃表空間tbs3,初始文件大小32M,每次擴展1M,最大33M。
SQL> create tablespace tbs3 datafile '/dm7/data/DAMENG/tbs3.dbf' size 32 autoextend on next 1 maxsize 33;

B.如何維護和管理表空間?
1.表空間不足
A.創建大的表空間數據導出在導入
B.把表空間數據文件resize
C.增加數據文件
SQL> alter tablespace tbs3 add datafile '/dm7/data/DAMENG/tbs3_1.dbf' size 32 autoextend on maxsize 50;
2.表空間更換存儲位置
SQL> select tablespace_name,file_name from dba_data_files where tablespace_name='TBS';
注意:表空間更換存儲位置,要求表空間offline
SQL> select tablespace_name,status from dba_tablespaces;
0表示的是online,1表是的是offline
SQL> alter tablespace tbs offline;
SQL> alter tablespace tbs rename datafile '/dm7/data/DAMENG/TBS.dbf' to '/dm7/tbs/TBS.dbf';
SQL> alter tablespace tbs online;
3.刪除表空間
SQL> drop tablespace tbs3;
drop tablespace tbs3;

SQL> drop tablespace tbs;

用戶
1.默認有哪些用戶?
SQL> select username from dba_users;
行號 USERNAME


1 SYS (內置管理賬戶,不能登錄數據庫)
2 SYSDBA(管理員)
3 SYSAUDITOR(審計員)
4 SYSSSO (安全員--安全版)
版本:
SQL> select * from v$version;
開發版本,標準版,企業版,安全版
2.規劃用戶?
A.名字 字母開頭 $#_
B.存儲位置 表空間
C.密碼安全策略 (嘗試登錄次數,鎖定時間,密碼有效期)
D.權限(系統,對象)
規劃用戶test,用戶的默認表空間爲tbs2,密碼嘗試登錄3次,失敗鎖定1分鐘,密碼有效期180天。可以創建表,可以查詢dmhr.city表的所有數據。
SQL> create user test identified by "dameng123" limit FAILED_LOGIN_ATTEMPS 3,password_lock_time 1,password_life_time 180 default tablespace tbs2;
授權:
系統權限 對數據庫做什麼?
對象權限 對數據庫的數據對象做什麼?
SQL> grant create table to test;
SQL> grant select on dmhr.city to test;
撤銷權限:
SQL> revoke create table from test;
SQL> revoke select on dmhr.city from test;
3.規劃角色?(一類權限的集合)
public resource dba
SQL> create role r1;
SQL> grant create table to r1;
SQL> grant select on dmhr.city to r1;
SQL> grant r1 to test;
確定用戶的權限:
SQL> select grantee,granted_role from dba_role_privs where grantee='TEST';
SQL> select grantee,privilege from dba_sys_privs where grantee='R1';
4.維護用戶和角色?
A.修改密碼
SQL> alter user test identified by 123456789;
B.鎖定和解鎖
SQL> alter user test account lock;
SQL> select username,account_status from dba_users;
SQL> alter user test account unlock;
C.刪除用戶
SQL> drop user test;
SQL> drop user test cascade;
D.啓用和禁用角色
SQL> sp_set_role('R1',0);
SQL> sp_set_role('R1',1);
E.刪除角色
SQL>drop role r1;
注意:創建用戶的時候會生成一個與用戶同名的模式,如果你創建用戶,模式名已經存在,用戶無法創建。

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