Oracle数据库管理员应按如下方式对Oracle数据库系统做定期监控
创新互联-专业网站定制、快速模板网站建设、高性价比白银区网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式白银区网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖白银区地区。费用合理售后完善,十年实体公司更值得信赖。
( ) 每天 对Oracle数据库的运行状态 日志文件 备份情况 数据库的空间使用情况 系统资源的使用情况进行检查 发现并解决问题
( ) 每周 对数据库对象的空间扩展情况 数据的增长情况进行监控 对数据库做健康检查 对数据库对象的状态做检查
( ) 每月 对表和索引等进行Analyze 检查表空间碎片 寻找数据库性能调整的机会 进行数据库性能调整 提出下一步空间管理计划 对ORACLE数据库状态进行一次全面检查
每天的工作
( ) 确认所有的INSTANCE状态正常登陆到所有数据库或例程 检测ORACLE后台进程: $ps –ef|grep ora
( ) 检查数据文件的状态记录状态不是 online 的数据文件 并做恢复
Select file_name status from dba_data_files where status= UNAVAILABLE ;
( ) 检查日志文件和trace文件记录alert和trace文件中的错误
连接到每个需管理的系统
使用 telnet 对每个数据库 cd到bdump目录 通常是$ORACLE_BASE//bdump 使用Unix tail 命令来查看alert_ log文件 如果发现任何新的ORA 错误 记录并解决
( ) 检查数据库当日备份的有效性
对RMAN备份方式: 检查第三方备份工具的备份日志以确定备份是否成功
对EXPORT备份方式: 检查exp日志文件以确定备份是否成功
对其他备份方式: 检查相应的日志文件
( ) 检查文件系统的使用(剩余空间) 如果文件系统的剩余空间小于 % 需删除不用的文件以释放空间
$df –k
( ) 检查表空间的使用情况
SELECT tablespace_name max_m count_blocks free_blk_cnt sum_free_m to_char( *sum_free_m/sum_m ) || % AS pct_free FROM (SELECT tablespace_name sum(bytes)/ / AS sum_m FROM dba_data_files GROUP BY tablespace_name) (SELECT tablespace_name AS fs_ts_name max(bytes)/ / AS max_m count(blocks) AS count_blocks sum(bytes/ / ) AS sum_free_m FROM dba_free_space GROUP BY tablespace_name ) WHERE tablespace_name = fs_ts_name;
( ) 检查剩余表空间
SELECT tablespace_name sum ( blocks ) as free_blk trunc ( sum ( bytes ) /( * ) ) as free_m max ( bytes ) / ( ) as big_chunk_k count (*) as num_chunks FROM dba_free_space GROUP BY tablespace_name;
( ) 监控数据库性能
运行bstat/estat生成系统报告或者使用statspack收集统计数据
( ) 检查数据库性能 记录数据库的cpu使用 IO buffer命中率等等
使用vmstat iostat glance top等命令
( ) 日常出现问题的处理
每周的工作
( ) 监控数据库对象的空间扩展情况
根据本周每天的检查情况找到空间扩展很快的数据库对象 并采取相应的措施
删除历史数据
扩表空间
alter tablespace add datafile size
调整数据对象的存储参数
next extent pct_increase
( ) 监控数据量的增长情况
根据本周每天的检查情况找到记录数量增长很快的数据库对象 并采取相应的措施
删除历史数据
扩表空间
alter tablespace add datafile size
( ) 系统健康检查
检查以下内容:
init ora controlfile redo log file archiving sort area size tablespace(system temporary tablespace fragment) datafiles(autoextend location) object(number of extent next extent index) rollback segment logging tracing(alert log max_dump_file_size sqlnet)
( ) 检查无效的数据库对象
col owner for a col object_name for a SELECT owner object_name object_type FROM dba_objects WHERE status= INVALID ;
( ) 检查不起作用的约束
SELECT owner constraint_name table_name constraint_type status FROM dba_constraints WHERE status = DISABLED AND constraint_type = P ;
( ) 检查无效的trigger
SELECT owner trigger_name table_name status FROM dba_triggers WHERE status = DISABLED ;
每月的工作
( ) Analyze Tables/Indexes/Cluster
*** yze table estimate statistics sample percent;
( ) 检查表空间碎片
根据本月每周的检查分析数据库碎片情况 找到相应的解决方法;
( ) 寻找数据库性能调整的机会
比较每天对数据库性能的监控报告 确定是否有必要对数据库性能进行调整;
( ) 数据库性能调整
如有必要 进行性能调整;
( ) 提出下一步空间管理计划
lishixinzhi/Article/program/Oracle/201311/18051
oracle dba的工作职责有:
数据库故障处理及修复、结合数据库实际情况进行数据分析、优化;
数据库的备份、恢复及高可用性的方案设计及实现;
参与数据库架构设计和数据应用的开发等;
oracle DBA是个越老越吃香的行业,经验越多薪资就越高,这个职位是一个公司的核心,在公司中也是占有举足轻重的地位,关于oracle DBA的疑问你可以到CUUG去看看,培育了上千oracle数据库 DBA的地方!
1. 如果是对用户的,用系统管理员职责,安全性-用户
然后对要取消的职责设置失效日期
2. 要失效职责,同样用系统管理员职责,安全性-职责
在职责的有效性上取消掉即可
oracle启停
1.登录
登录linux系统,切换到oracle用户
# su oracle
2.连接
$ cd $ORACLE_HOME/bin
$ sqlplus /nolog
3.使用管理员权限
conn / as sysdba
4.关闭服务(启动)
shutdown immediate
startup
5.退出
quit
6.启动监听
$ lsnrctl start
===============================================
磁盘挂载
/oracle 下文件随着项目的扩大,目录空间已不够使用,需要挂载一个新的磁盘来负责存储
直接挂载会发现/oracle下变空了,这个原因是由于linux的VFS(虚拟文件系统)机制导致的,正常登录以后,所看到的各个目录,文件都是内核在加载时候构造在内存中的VFS目录树,而不是直接看到硬盘上的实际目录树。当你挂载某个设备到一个VFS挂载点上时(比如/oracle),系统就把VFS中的这个挂载点/oracle指向你最后所挂载的那个设备上。那么你现在访问该挂载点时,就会看到你最后挂载在此处的设备。而之前所挂载的设备依然在那里,只不过挂载点/oracle已经不再指向之前的设备。所以之前的数据是被隐藏了,但并没有删除,若umount挂载后,数据又重新回来了
基于这种情况,只能通过跳板的方式把原来的/oracle数据复制到新的/oracle分区下了 ,如何添加新硬盘,请查找相关资料
mkdir /new ###跳板目录
mount /dev/sdb1 /new ###首先挂载跳板目录
cp -R /oracle/* /new ###复制/oracle目录所有数据到/new先
mount /dev/sdb1 /oracle ###挂载/oracle 到新硬盘,此时你会神奇的发现之前的/oracle目录文件已经全部转移过来了,也许你会有点疑问,我并没有复制或移动/new文件到新挂载的/oracle目录啊,其实此时的/oracle目录相当于/new目录的硬链接,可以测试下mkdir /new/test 你会发现/oracle目录也存在test
umount /new ###解除挂载
rm -rf /new ###删除跳板目录
vi /etc/fstab
增加:/dev/sdb1 /oracle ext3 defaults 0 0
:wq!
--------------------------------------------------------------------------------------
挂载新盘后进行启动发现报错
------------
ORA-09925: Unable to create audit trail file
Linux Error: 13: Permission denied
Additional information: 9925
ORA-09925: Unable to create audit trail file
Linux Error: 13: Permission denied
Additional information: 9925
---------
是因为目录权限问题
解决方法
chown -R oracle.oinstall /oracle
再进行操作,一切正常
===================================================
可参考
Linux磁盘的挂载和卸载: