1.1 查询实例信息 1 2 3 4 5 6 7 8 SQL> select name inst_name from v$instance; 行号 INST_NAME ---------- --------- 1 DMSERVER 已用时间: 11.211(毫秒). 执行号:15. 1234567
1.2 查询数据库当前状态 1 2 3 4 5 6 SQL> select status$ from v$instance; 行号 STATUS$ ---------- ------- 1 OPEN 12345
1.3 查询DB_MAGIC 1 2 3 4 5 6 7 SQL> select db_magic from v$rlog; 行号 DB_MAGIC ---------- -------------------- 1 1040931148 123456
1.4 查询是否归档 1 2 3 4 5 6 SQL> select arch_mode from v$database; 行号 ARCH_MODE ---------- --------- 1 N 12345
1.5 查询授权截止有效期 1 2 3 4 5 6 SQL> select EXPIRED_DATE from v$license; 行号 EXPIRED_DATE ---------- ------------------ 1 2021-06-01 12345
1.6 查看等待情况 1 2 3 4 5 SQL> select class_name,total_waits count from v$wait_class; 未选定行 已用时间: 116.087(毫秒). 执行号:27. 1234
1.7 查看数据库配置端口 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 SQL> select para_name,para_value from v$dm_ini where para_name like '%PORT%'; 行号 PARA_NAME PARA_VALUE ---------- -------------------- ---------- 1 PORT_NUM 5236 2 ELOG_REPORT_LINK_SQL 0 3 DFS_HUGE_SUPPORT 1 4 EXTERNAL_JFUN_PORT 6363 5 EXTERNAL_AP_PORT 4236 6 DCRS_PORT_NUM 6236 7 AP_PORT_NUM 0 8 DW_PORT 0 9 DCP_PORT_NUM 5237 10 HA_OTHER_INST_PORT 65534 11 HA_INST_CHECK_PORT 65534 11 rows got 已用时间: 96.994(毫秒). 执行号:8. 12345678910111213141516171819
1.8 查询数据库最大连接数 1 2 3 4 5 6 7 8 SQL> select SF_GET_PARA_VALUE(2,'MAX_SESSIONS'); 行号 SF_GET_PARA_VALUE(2,'MAX_SESSIONS') ---------- ----------------------------------- 1 100 已用时间: 1.961(毫秒). 执行号:5. 1234567
1.9 查询命令执行计划 1 2 3 4 5 6 7 8 SQL> explain select * from test_table; 1 #NSET2: [0, 1, 56] 2 #PRJT2: [0, 1, 56]; exp_num(2), is_atom(FALSE) 3 #CSCN2: [0, 1, 56]; INDEX33555607(TEST_TABLE) 已用时间: 3.655(毫秒). 执行号:0. 1234567
1.10 查询用户密码限制登录次数和密码过期天数 1 2 3 4 5 6 7 8 9 10 11 12 SQL> select u.username,p.FAILED_NUM,p.life_time from SYSUSERS p,dba_users u where p.FAILED_NUM not in ('0') order by 1,2 ; 行号 USERNAME FAILED_NUM LIFE_TIME ---------- ---------- ----------- ----------- 1 SYS 3 0 2 SYSAUDITOR 3 0 3 SYSDBA 3 0 4 SYSSSO 3 0 5 TEST 3 0 已用时间: 12.079(毫秒). 执行号:66. 1234567891011
注释:life_time为0,表示不限制密码过期天数
1.11 查询数据库字符集 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 SQL> select SF_GET_UNICODE_FLAG(); 行号 SF_GET_UNICODE_FLAG() ---------- --------------------- 1 0 已用时间: 0.321(毫秒). 执行号:38. SQL> select UNICODE (); 行号 UNICODE() ---------- ----------- 1 0 已用时间: 0.288(毫秒). 执行号:39. 1234567891011121314
注释:0 表示 GB18030,1 表示 UTF-8,2 表示 EUC-KR
1.12 修改密码策略 1 2 3 4 SQL> SP_SET_PARA_VALUE(1,'PWD_POLICY',3); DMSQL 过程已成功完成 已用时间: 10.188(毫秒). 执行号:7. 123
系统支持的口令策略有: 0无策略 1禁止与用户名相同 2口令长度不小于9 4至少包含一个大写字母(A-Z) 8至少包含一个数字(0-9) 16至少包含一个标点符号(英文输入法 状态下,除”和空格外的所有符号)
口令策略可单独应用,也可组合应用。比如我们即要求禁止用户名与密码相同,又要求口令至少包含一个大写字母,则设置口令策略为1+4=5即可。
1.13 查看密码策略 1 2 3 4 5 6 7 8 9 10 11 12 SQL> select * from v$dm_ini a where a.PARA_NAME = 'PWD_POLICY'; 行号 PARA_NAME PARA_VALUE MIN_VALUE MAX_VALUE MPP_CHK SESS_VALUE FILE_VALUE ---------- ---------- ---------- --------- --------- ------- ---------- ---------- DESCRIPTION PARA_TYPE ----------------------- --------- 1 PWD_POLICY 2 0 31 N 2 2 Flag of password policy SYS 已用时间: 16.146(毫秒). 执行号:4. 1234567891011
1.14 查看每个用户的密码策略 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 SQL> select username,password_versions,account_status from dba_users; 行号 USERNAME PASSWORD_VERSIONS ACCOUNT_STATUS ---------- ---------- ----------------- -------------- 1 SYSDBA 0 OPEN 2 SYS 0 OPEN 3 TEST12345 3 OPEN 4 TEST 2 OPEN 5 SYSSSO 0 OPEN 6 SYSAUDITOR 0 OPEN 6 rows got 已用时间: 185.814(毫秒). 执行号:11. 1234567891011121314
2.数据库文件/空间信息 2.1 查询归档信息 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 SQL> select * from v$dm_arch_ini; 行号 ARCH_NAME ARCH_TYPE ARCH_DEST ARCH_FILE_SIZE ---------- -------------- --------- --------------------------------------- -------------- ARCH_SPACE_LIMIT ARCH_HANG_FLAG ARCH_TIMER_NAME ARCH_IS_VALID ARCH_WAIT_APPLY ---------------- -------------- --------------- ------------- --------------- ARCH_INCOMING_PATH ARCH_CURR_DEST ------------------ --------------------------------------- 1 ARCHIVE_LOCAL1 LOCAL /home/dmdba/opt/dmdbms/data/DAMENG/arch 128 5000 1 NULL Y NULL NULL /home/dmdba/opt/dmdbms/data/DAMENG/arch 已用时间: 0.565(毫秒). 执行号:12. 1234567891011121314
2.2 查看控制文件 1 2 3 4 5 6 7 8 SQL> select para_value name from v$dm_ini where para_name='CTL_PATH'; 行号 NAME ---------- -------------------------- 1 /dmdbms/data/DAMENG/dm.ctl 已用时间: 31.907(毫秒). 执行号:11. 1234567
2.3 查询日志文件 1 2 3 4 5 6 7 SQL> select GROUP_ID ,FILE_ID,PATH,CLIENT_PATH from v$rlogfile; 行号 GROUP_ID FILE_ID PATH CLIENT_PATH ---------- ----------- ----------- ----------------------------------------------- ------------ 1 2 0 /home/dmdba/opt/dmdbms/data/DAMENG/DAMENG01.log DAMENG01.log 2 2 1 /home/dmdba/opt/dmdbms/data/DAMENG/DAMENG02.log DAMENG02.log 123456
2.4 查询数据库占用空间 注释:默认为M为单位
1 2 3 4 5 6 SQL> select sum(bytes/1024/1024)|| 'M' from dba_data_files; 行号 SUM(BYTES/1024/1024)||'M' ---------- ------------------------- 1 289M 12345
2.5 查询数据文件位置 1 2 3 4 5 6 7 8 9 SQL> select GROUP_ID , ID ,path,STATUS$ from v$datafile; 行号 GROUP_ID ID PATH STATUS$ ---------- ----------- ----------- --------------------------------------------- ----------- 1 0 0 /home/dmdba/opt/dmdbms/data/DAMENG/SYSTEM.DBF 1 2 1 0 /home/dmdba/opt/dmdbms/data/DAMENG/ROLL.DBF 1 3 3 0 /home/dmdba/opt/dmdbms/data/DAMENG/TEMP.DBF 1 4 4 0 /home/dmdba/opt/dmdbms/data/DAMENG/MAIN.DBF 1 12345678
2.6 查询表空间大小 1 2 3 4 5 6 7 8 9 10 SQL> select FILE_NAME,FILE_ID,TABLESPACE_NAME,BYTES/1024/1024||'M' from dba_data_files; 行号 FILE_NAME FILE_ID TABLESPACE_NAME BYTES/1024/1024||'M' ---------- --------------------------------------------- ----------- --------------- -------------------- 1 /home/dmdba/opt/dmdbms/data/DAMENG/SYSTEM.DBF 0 SYSTEM 23M 2 /home/dmdba/opt/dmdbms/data/DAMENG/TEST.DBF 0 TEST 50M 3 /home/dmdba/opt/dmdbms/data/DAMENG/MAIN.DBF 0 MAIN 128M 4 /home/dmdba/opt/dmdbms/data/DAMENG/TEMP.DBF 0 TEMP 10M 5 /home/dmdba/opt/dmdbms/data/DAMENG/ROLL.DBF 0 ROLL 128M 123456789
2.7 查看表空间使用情况 1 2 3 4 5 6 7 8 9 10 11 12 13 SQL> select t1.NAME tablespace_name, t2.FREE_SIZE*SF_GET_PAGE_SIZE()/1024/1024 ||'M' free_space, t2.TOTAL_SIZE*SF_GET_PAGE_SIZE()/1024/1024 ||'M' total_space, t2.FREE_SIZE*100/t2.total_size "% FREE" from V$TABLESPACE t1, V$DATAFILE t2 where t1.ID=t2.GROUP_ID; 行号 TABLESPACE_NAME FREE_SPACE TOTAL_SPACE % FREE ---------- --------------- ---------- ----------- -------------------- 1 SYSTEM 17M 24M 74 2 MAIN 120M 128M 94 3 TEMP 9M 10M 99 4 ROLL 119M 128M 93 123456789101112
2.8 查询当前用户模式 1 2 3 4 5 6 7 8 SQL> SELECT SYS_CONTEXT ('userenv', 'current_schema') FROM DUAL; 行号 SYS_CONTEXT('userenv','current_schema') ---------- --------------------------------------- 1 SYSDBA 已用时间: 79.134(毫秒). 执行号:6. 1234567
3.数据库用户/角色信息 3.1 查询数据库有哪些用户 1 2 3 4 5 6 7 8 9 10 11 SQL> select username from dba_users; 行号 USERNAME ---------- ---------- 1 SYSDBA 2 SYS 3 SYSSSO 4 SYSAUDITOR 已用时间: 9.740(毫秒). 执行号:6. 12345678910
3.2 查询数据库用户信息 1 2 3 4 5 6 7 8 9 SQL> select username,user_id,default_tablespace,profile from dba_users; 行号 USERNAME USER_ID DEFAULT_TABLESPACE PROFILE ---------- ---------- ----------- ------------------ --------------------------------------------- 1 SYSDBA 50331649 MAIN /home/dmdba/opt/dmdbms/data/DAMENG/MAIN.DBF 2 SYS 50331648 SYSTEM /home/dmdba/opt/dmdbms/data/DAMENG/SYSTEM.DBF 3 SYSSSO 50331651 SYSTEM /home/dmdba/opt/dmdbms/data/DAMENG/SYSTEM.DBF 4 SYSAUDITOR 50331650 SYSTEM /home/dmdba/opt/dmdbms/data/DAMENG/SYSTEM.DBF 12345678
3.3 查看数据库对象 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 SQL> select t2.name owner,t1.subtype$ object_type,t1.valid status,count(1) count# from sysobjects t1,sysobjects t2 where t1.schid=t2.id and t1.schid!=0 group by t2.name,t1.subtype$,t1.valid; 行号 OWNER OBJECT_TYPE STATUS COUNT# ---------- ---------- ----------- ------ -------------------- 1 SYS INDEX Y 287 2 DEM INDEX Y 149 3 CTISYS STAB Y 1 4 CTISYS CONS Y 1 5 CTISYS INDEX Y 1 6 SYSSSO STAB Y 8 7 SYSSSO CONS Y 9 8 SYSSSO INDEX Y 9 9 SYSAUDITOR STAB Y 4 10 SYSAUDITOR CONS Y 2 11 SYSAUDITOR INDEX Y 5 123456789101112131415
3.4 查询用户对象 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 select * from user_objects; 行号 OBJECT_NAME SUBOBJECT_NAME OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE ---------- ---------------- -------------- --------- -------------- ----------- CREATED ---------------------------------------------------------------------------------------------------- LAST_DDL_TIME ---------------------------------------------------------------------------------------------------- TIMESTAMP ---------------------------------------------------------------------------------------------------- STATUS TEMPORARY GENERATED SECONDARY NAMESPACE EDITION_NAME ------ --------- --------- --------- --------- ------------ 312 ADMIN_AUDIT_SQL NULL 1287 NULL TABLE 2020-08-20 18:07:18.521000 2020-08-20 18:07:18.000000 2020-08-20 18:07:18.521000 VALID N N NULL NULL NULL 312 rows got 已用时间: 793.928(毫秒). 执行号:55. 12345678910111213141516171819202122
3.5 查看角色类型 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 SQL> select * from dba_roles; 行号 ROLE PASSWORD_REQUIRED AUTHENTICATION_TYPE ---------- ---------------- ----------------- ------------------- 1 DBA NULL NULL 2 DB_AUDIT_ADMIN NULL NULL 3 DB_AUDIT_OPER NULL NULL 4 DB_AUDIT_PUBLIC NULL NULL 5 DB_AUDIT_SOI NULL NULL 6 DB_AUDIT_VTI NULL NULL 7 DB_POLICY_ADMIN NULL NULL 7 rows got 已用时间: 5.827(毫秒). 执行号:9. 123456789101112131415
3.6 查看用户的角色和权限 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 SQL> select * from SYS.DBA_ROLE_PRIVS ; 行号 GRANTEE GRANTED_ROLE ADMIN_OPTION DEFAULT_ROLE ---------- --------------- ---------------- ------------ ------------ 1 SYSDBA DBA Y NULL 2 DBA VTI Y NULL 3 SYSDBA SYS_ADMIN N NULL 4 SYSDBA SOI Y NULL 5 TEST SOI N NULL 6 SYSDBA RESOURCE Y NULL 7 SYSDBA PUBLIC Y NULL 8 TEST PUBLIC N NULL 9 DB_POLICY_ADMIN DB_POLICY_VTI Y NULL 10 SYSSSO DB_POLICY_SOI Y NULL 11 SYSSSO DB_POLICY_PUBLIC Y NULL 行号 GRANTEE GRANTED_ROLE ADMIN_OPTION DEFAULT_ROLE ---------- -------------- --------------- ------------ ------------ 12 SYSSSO DB_POLICY_OPER Y NULL 13 SYSSSO DB_POLICY_ADMIN Y NULL 14 DB_AUDIT_ADMIN DB_AUDIT_VTI Y NULL 15 SYSAUDITOR DB_AUDIT_SOI Y NULL 16 SYSAUDITOR DB_AUDIT_PUBLIC Y NULL 17 SYSAUDITOR DB_AUDIT_OPER Y NULL 18 SYSAUDITOR DB_AUDIT_ADMIN Y NULL 18 rows got 已用时间: 4.989(毫秒). 执行号:48. 1234567891011121314151617181920212223242526272829
3.7 表空间脱机/在线 1 2 3 4 5 6 7 SQL> alter tablespace "TEST" offline; 操作已执行 已用时间: 280.323(毫秒). 执行号:4. SQL> alter tablespace "TEST" online; 操作已执行 已用时间: 121.133(毫秒). 执行号:5. 123456
4.数据库运维信息 4.1 创建表空间 注释:默认大小为M
1 2 3 4 SQL> create tablespace TEST datafile '/home/dmdba/opt/dmdbms/data/DAMENG/TEST.DBF' size 50; 操作已执行 已用时间: 15.041(毫秒). 执行号:28. 123
4.2 查询总表数量 1 2 3 4 5 6 SQL> select count(*) from dba_tables; 行号 COUNT(*) ---------- -------------------- 1 363 12345
4.3 关闭数据库 1 2 3 4 SQL> shutdown normal; 关闭数据库 SQL> shutdown immediate; 正常方式关闭数据库 SQL> shutdown abort; 立即方式关闭数据库。数据库并不立即关闭,而是在执行某些清除工作后才关闭(终止会话、释放会话资源),需要10到20S。 123
4.4 创建用户 1 2 3 4 SQL> create user test1 identified by 123456789 default tablespace test; 操作已执行 已用时间: 13.383(毫秒). 执行号:36. 123
5.数据库表/列/视图信息 5.1 查询当前用户所有表 1 2 3 4 5 6 7 8 9 10 11 12 13 14 SQL> select table_name,tablespace_name from user_tables; 行号 TABLE_NAME TABLESPACE_NAME ---------- ------------------------------------ --------------- 1 ##PLAN_TABLE TEMP 2 ##HISTOGRAMS_TABLE TEMP 3 ADMIN_ROLE MAIN 4 ADMIN_SYS_CONFIG MAIN 5 ADMIN_USER MAIN 6 ADMIN_AUDIT MAIN 7 ADMIN_AUDIT_SQL MAIN 8 DBTOOL_DTS_TRANSFORM MAIN 9 DBTOOL_DTS_TRANSFORM_EXECUTE MAIN 12345678910111213
5.2 查询表的大小 注释:页数,默认8KB大小
1 2 3 4 5 6 SQL> SELECT TABLE_USED_SPACE ('SYS','SYSOBJECTS') ; 行号 TABLE_USED_SPACE('SYS','SYSOBJECTS') ---------- ------------------------------------ 1 160 12345
5.3 创建新表 1 2 3 4 SQL> create table tests ( id char not null) ; 操作已执行 已用时间: 97.526(毫秒). 执行号:16. 123
5.4 增加表的列 1 2 3 4 SQL> alter table test_rename add ids int; 操作已执行 已用时间: 76.447(毫秒). 执行号:8. 123
5.5 删除表的列 1 2 3 4 SQL> alter table test_table drop ids; 操作已执行 已用时间: 107.795(毫秒). 执行号:10. 123
5.6 重命名表名 1 2 3 4 SQL> alter table tests rename to test_rename; 操作已执行 已用时间: 128.985(毫秒). 执行号:26. 123
5.7 增加表注释 1 2 3 4 SQL> comment on table test_rename is 'AAAAAAA'; 操作已执行 已用时间: 52.596(毫秒). 执行号:37. 123
5.8 查询表注释 1 2 3 4 5 6 7 8 SQL> select comments from user_tab_comments where table_name = 'TEST_RENAME'; 行号 COMMENTS ---------- -------- 1 AAAAAAA 已用时间: 2.094(毫秒). 执行号:39. 1234567
5.8 增加列注释 1 2 3 4 SQL> comment on column test_rename.id is 'Primary'; 操作已执行 已用时间: 5.780(毫秒). 执行号:40. 123
5.9 查询列注释 1 2 3 4 5 6 7 8 SQL> select * from user_col_comments where owner = 'SYSDBA' and table_name = 'TEST_RENAME' and column_name = 'ID'; 行号 OWNER TABLE_NAME COLUMN_NAME COMMENTS ---------- ------ ----------- ----------- -------- 1 SYSDBA TEST_RENAME ID Primary 已用时间: 66.837(毫秒). 执行号:48. 1234567
5.10 创建视图 1 2 3 SQL> create view v_test as select C1,C2 from T1 where C3='r'; 操作已执行 已用时间: 123.383(毫秒). 执行号:12.