DM基本命令

基本命令

一般情况下,建议用户自己创建一个表空间来存放业务数据,或者将数据存放在默认的

用户表空间 MAIN 中。

用户可以通过执行如下语句来查看 SYSTEMROLLMAIN 以及 TEMP 的表空间相关信

息。

查看数据库中实例信息

SELECT * FROM V$INSTANCE;

查询内存池 BUFFERPOOL 的页数、读取页数和命中率信息

SELECT NAME,N_PAGES,N_LOGIC_READS,RAT_HIT FROM V$BUFFERPOOL;

查询系统中上锁的事务、锁类型,以及表 ID 信息 

SELECT TRX_ID,LTYPE,LMODE,TABLE_ID FROM V$LOCK;

查看系统中所有活动的线程信息 

SELECT top 2* FROM V$THREADS;

查询系统执行的 SQL 历史信息

SELECT SESS_ID,TOP_SQL_TEXT,TIME_USED FROM V$SQL_HISTORY;

查看字典缓存的信息

SELECT * FROM V$DICT_CACHE;

查看会话信息

SELECT SESS_ID,SQL_TEXT,STATE,CREATE_TIME,CLNT_HOST FROM V$SESSIONS;

确定高负载的 SQL

在打开监控开关(ENABLE_MONITOR=1MONITOR_TIME=1)后,可以通过查询动态

视图 V$LONG_EXEC_SQLS V$SYSTEM_LONG_EXEC_SQLS 来确定高负载的 SQL 语句。

前者显示最近 1000 条执行时间较长的 SQL 语句,后者显示服务器启动以来执行时间最长的

20 SQL 语句。例如:

SELECT * FROM V$LONG_EXEC_SQLS;

或者

SELECT * FROM V$SYSTEM_LONG_EXEC_SQLS;

SELECT * FROM V$TABLESPACE;

查看用户占用的空间

可以使用系统函数 USER_USED_SPACE 得到用户占用空间的大小,函数参数为用户名,

返回值为占用的页的数目。

SELECT USER_USED_SPACE('TEST_USER');

查看表占用的空间

可以使用系统函数 TABLE_USED_SPACE 得到表对象占用空间的大小,函数参数为模式

名和表名,返回值为占用的页的数目。

SELECT TABLE_USED_SPACE('SYSDBA', 'TEST');

查看表使用的页数

可以使用系统函数 TABLE_USED_PAGES 得到表对象实际使用页的数目,函数参数为模

式名和表名,返回值为实际使用页的数目。

SELECT TABLE_USED_PAGES('SYSDBA', 'TEST');

查看索引占用的空间

可以使用系统函数 INDEX_USED_SPACE 得到索引占用空间的大小,函数参数为索引

ID,返回值为占用的页的数目。

SELECT INDEX_USED_SPACE(33555463);

查看索引使用的页数

可以使用系统函数 INDEX_USED_PAGES 得到索引实际使用页的数目,函数参数为索引

ID,返回值为实际使用页的数目。

SELECT INDEX_USED_PAGES(33555463);

查看数据库状态:

 Ps -ef | grep dms

查看数据库版本:

Select svr_version ||’’||ID_CODE 数据库版本 from v$instance;

查看数据库授权:

Select * from v$license;

在线日志信息:

Select * from v$rlogfile

归档配置:

Select arch_name,arch_dest,arch_file_size,arch_space_limit from v$dm_arch_ini;

归档和数据库是否分开存储:

Select top 1 D.path 数据目录 A.dest_test 归档目录 from v$datafile D, v$dm_arch_ini A;

备份信息:

Select name,describe from SYSJOB.SYSJOBS;

数据是否和备份分开存储:

Select top 1 NAME,COMMAND from “SYSJOB”.”SYSJOBSTEPS”;select path from v$datafile;

SQL日志策略:

Select para_name,para_value from v$dm_ini where para_name=’SVR_LOG’’

是否有系统管理员增加用户:

Select username from dba_users where account_status=’OPEN’;

表空间规划,建议每个用户有独立表空间:

Select username,default_tablespace from dba_users where account_status=’OPEN’;

应用用户是否有超出权限的配置:

Select grantee,granted_role from dba_role_privs where granted role=’DBA’;

是否存在死锁:

Select * from v$deadlock_history;

是否存在历史错误:

Select * from v$runtime_ERR_history;

运行日志是否存在错误记录:

Select * from v$instance_log_history where level$ in (‘ERROR’,’FATAL’);

切换模式:

Show global info;

故障切换测试:

Choose takeover GDW1_01;takeover GDW01.DW1_01B;

隔离级别修改:

用户可以在事务开始时使用以下语句设定事务为读提交隔离级:

SET TRANSACTION ISOLATION LEVEL READ COMMITTED;

用户可以在事务开始时使用以下语句设定事务为串行化隔离级:

SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;

用户可以在事务开始时使用以下语句,设定事务为读未提交隔离级:

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

用户可以在事务开始时使用以下语句,设定事务为只读事务:

SET TRANSACTION READ ONLY;

http://eco.dameng.com

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值