1、 (address = (protocol = tcp)(host = 192.168.137.10)(port = 1521) (connect_data = (service_name =racdb1)(ur=a)这里的service_name =racdb1 就是在服务器端的GLOBAL_DBNAME=racdb1oracleracdb1 $ tnsping racdb1TNS Ping Utility for Linux: Version 11.2.0.1.0 - Production on 21-JAN-2015 14:51:49Copyright (c) 1997, 2009, O
2、racle. All rights reserved.TNS-03502: Insufficient arguments. Usage: tnsping 55Used parameter files:Used TNSNAMES adapter to resolve the aliasAttempting to contact (description = (address_list = (address = (protocol = tcp)(host = racdb1)(port = 1521) (connect_data = (service_name = racdb1)(ur=a)OK (
3、0 msec)1.3. 检查Oracle Listenerlsnrctl stoplsnrctl startlsnrctl statuslsnrctl service1.4. 登陆数据库的方式修改登陆oracle 认证模式默认情况下我们oracle 安装好后是使用操作系统用户的验证,所以这里如果我们使用sys用户不用密码就可以登录,如果我们想使用oracle 密码文件验证的话我们就要进入下列文件夹cd /u01/app/oracle/product/11.2.0/dbhome_1/network/admin修改sqlnet.ora增加下列命令SQLNET.AUTHENTICATION_SERV
4、ICES = NONE配置了tnsnames登录数据库方式oracleracdb1 $ sqlplus scott/111111racdb1sqlplus /nolog 使用scott登陆到指定数据库racdb1conn sys/111111racdb1 AS SYSDBA; 察看登陆到了哪个数据库实例select instance_name from v$instance使用sys用户登陆conn sys/change_on_installer as sysdba 用sysdba 登陆conn /as sysdba 使用sys用户登录conn sys/change_on_install as
5、 sysdba;conn / as sysdba 连接数据库conn scott/111111 使用scott进行连接1.5. 数据库的启动数据库启动方式方式 含义startup 启动实例、装载数据库、打开数据库startup nomount 启动实例,不加载数据库startup mount 启动实例,加载数据库但不打开数据库startup restrict 启动过程中限制访问数据库startup force 强制数据库启动startup pfile=/oracle/app/oracle/product/10g/dbs/initminos.ora 使用非缺省参数文件启动数据库,以特定文件中指定
6、参数启动数据库,本例为”/oracle/app/oracle/product/11g/dbs/initminos.orastartup open racdb1startup nomount启动数据库实例, 该步骤只是启动了一个数据库实例.在此状态下我们可以访问下列结构文件Select * from v$instance;Select * from v$bgprocess;Select * from v$sga;利用以前读取的参数文件查找控制文件,这些控制文件包含数据文件名和重做日志名,然后将数据库装载.alter database mount一旦这一步完成我们就可以看到下列状态select *
7、 from v$database;select * from v$tablespace;select * from v$log;实例验证数据文件及日志文件并启动数据库alter database open;打开数据库startup restrict启动过程中限制访问数据库 alter system enable restricted sessiongrant restrict session to scott上述命令是只有用户拥有restrict 权限才可以连接启动数据库后起的进程select name, DESCRIPTION from v$bgprocess where paddr00;1
8、.6. 关闭数据库shutdown normal等待用户完成工作然后关闭Shutdown transactional 等待用户完成工作但是强制关闭连接shutdown immediate立即关闭 ,当前所有做工作回滚到一致状态,断开其连接shutdown abort 强制关闭,非干净关闭,下次重起后要回滚日志2. 用户管理2.1. 检察用户profileselect username,profile from dba_users where username=SCOTT2.2. 查看用户profile参数select * from dba_profiles where profile=DEFA
9、ULT3. 检查数据库基本状况3.1. 检查数据库创建日期Select Created, Log_Mode From V$Database;CREATED LOG_MODE- -2014/8/17 1 NOARCHIVELOG3.2. 检查数据库版本信息Select version from Product_component_version where SUBSTR(PRODUCT,1,6)=Oracle3.3. 检查实例状态 SQL SELECT inst_id, instance_name, host_name, VERSION, TO_CHAR (startup_time, yyyy-
10、mm-dd hh24:mi:ss) startup_time, status, archiver, database_status FROM gv$instance;SELECT inst_id, dbid, NAME, TO_CHAR (created, ) created, log_mode, TO_CHAR (version_time, ) version_time,open_mode FROM gv$database;INST_ID DBID NAME CREATED LOG_MODE VERSION_TIME OPEN_MODE- - - - - - -1 94264408 RACD
11、B1 2014-08-17 16:34:32 NOARCHIVELOG 2014-08-17 16:32 READ WRITE其中“STATUS”表示Oracle当前的实例状态,必须为“OPEN”;“DATABASE_STATUS”表示Oracle当前数据库的状态,必须为“ACTIVE”。 select name,log_mode,open_mode from v$database;NAME LOG_MODE OPEN_MODE- - -RACDB1 ARCHIVELOG READ WRITE其中“LOG_MODE”表示Oracle当前的归档方式。“ARCHIVELOG”表示数据库运行在归档模
12、式下,“NOARCHIVELOG”表示数据库运行在非归档模式下。在我们的系统中数据库必须运行在归档方式下。3.4. 查看前台进程ps -C oracle -o rsz,sid,cmd|grep LO free -m|egrep -v total|buffers|awk print $1,$3 Oracle 的前台进程是操作系统进程,它和oracle session 一一对应,官方建议,oracle sesson=1.5*process +203.5. 查看数据库连接的session select count(*) from v$session;3.6. 查看连接到数据库的模式select pr
13、ogram from v$process order by program;select d.NAME,s.NAME from v$dispatcher d,v$shared_server s,v$circuit c where d.PADDR=c.DISPATCHER and s.PADDR=c.SERVER(S012)以s001等就是共享模式连接3.7. 查看并发连接数select count(*) from v$session where status=ACTIVE3.8. 查看最大的连接processes select value from v$parameter where name
14、 = 3.9. 监控系统后台进程 Select name,Description From V$BGPROCESS Where Paddr3.10. 查看数据库初始化参数select name,value from v$parameter where isbasic=TRUE order by name;这些参数是当前数据库已经应用的参数3.11. 检查PGA使用情况select name,value from v$pgastat where name in (maximum PGA allocated,total PGA allocated);3.12. 检查SGA状态SELECT requ
15、est_misses, request_failures FROM v$shared_pool_reserved;Select component,current_size,min_size,max_size from v$sga_dynamic_components;REQUEST_MISSES REQUEST_FAILURES- - 0 0期望结果:request_misses和request_failures应该接近于0。巡检说明:request_misses是保留列表没有满足请求的可用内存片从而开始利用LRU列表刷新对象的次数;request_failures是未找到满足请求的内存次数
16、。3.13. 检查Oracle服务进程oracleracdb1 $ ps -ef|grep ora_|grep -v grep&ps -ef|grep ora_|grep -v grep|wc ?loracle 4459 1 0 15:53 ? 00:00:00 ora_pmon_racdb1oracle 4461 1 0 15:17 ora_vktm_racdb1oracle 4465 1 0 15:00 ora_gen0_racdb1oracle 4467 1 0 15:00 ora_diag_racdb1oracle 4469 1 0 15:00 ora_dbrm_racdb1oracl
17、e 4471 1 0 15:00 ora_psp0_racdb1oracle 4473 1 0 15:02 ora_dia0_racdb1oracle 4475 1 0 15:00 ora_mman_racdb1oracle 4477 1 0 15:00 ora_dbw0_racdb1oracle 4479 1 0 15:01 ora_lgwr_racdb1oracle 4481 1 0 15:05 ora_ckpt_racdb1oracle 4483 1 0 15:00 ora_smon_racdb1oracle 4527 1 0 15:00 ora_arc0_racdb1oracle 44
18、85 1 0 15:00 ora_reco_racdb1在检查Oracle的进程命令输出后,输出显示至少应包括以下一些进程:. Oracle写数据文件的进程,输出显示为:“ora_dbw0_racdb1” . Oracle写日志文件的进程,输出显示为:“ora_lgwr_racdb1” . Oracle监听实例状态的进程,输出显示为:“ora_smon_racdb1” . Oracle监听客户端连接进程状态的进程,输出显示为:“ora_pmon_racdb1” . Oracle进行归档的进程,输出显示为:“ora_arc0_racdb1” . Oracle进行检查点的进程,输出显示为:“ora
19、_ckpt_racdb1”. Oracle进行恢复的进程,输出显示为:“ora_reco_racdb1”3.14. 检查Oracle监听状态oracleracdb1 $ lsnrctl statusLSNRCTL for Linux: Version 11.2.0.1.0 - Production on 21-JAN-2015 17:42Copyright (c) 1991, 2009, Oracle. All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=racdb1)STATUS of the
20、LISTENER-Alias LISTENERVersion TNSLSNR for Linux: Version 11.2.0.1.0 - ProductionStart Date 21-JAN-2015 12:37:48Uptime 0 days 4 hr. 22 min. 53 secTrace Level offSecurity ON: Local OS AuthenticationSNMP OFFListener Parameter File /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.oraListe
21、ner Log File /u01/app/oracle/diag/tnslsnr/racdb1/listener/alert/log.xmlListening Endpoints Summary. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=racdb1) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.137.10)(PORT=1521)Services Summary.Service racdb1 has 1 instance(s). Instance , status UNKNOWN, has 3
22、 handler(s) for this service., status READY, has 1 handler(s) for this service.racdb1XDBThe command completed successfully“Services Summary”项表示Oracle的监听进程正在监听哪些数据库实例,输出显示中至少应该有“racdb1XDB”这一项。3.15. 检查监听进程是否存在oracleracdb1 $ ps -ef|grep lsn|grep -v greporacle 2140 1 0 12:37 ?01 /u01/app/oracle/product/
23、11.2.0/dbhome_1/bin/tnslsnr LISTENER -inherit3.16. 检查操作系统日志文件rootracdb1 # cat /var/log/messages |grep failed查看是否有与Oracle用户相关的出错信息。3.17. 检查oracle日志文件 select value from v$diag_info where name=Diag TraceVALUE-/u01/app/oracle/diag/rdbms/racdb1/racdb1/tracecat /u01/app/oracle/diag/rdbms/racdb1/racdb1/tra
24、ce/alert_racdb1.log | grep ora-cat /u01/app/oracle/diag/rdbms/racdb1/racdb1/trace/alert_racdb1.log | grep erroracleracdb1 trace$ cat /u01/app/oracle/diag/rdbms/racdb1/racdb1/trace/alert_racdb1.log | grep failOracle在运行过程中,会在警告日志文件(alert_SID.log)中记录数据库的一些运行情况:数据库的启动、关闭,启动时的非缺省参数;数据库的重做日志切换情况,记录每次切换的时间
25、,及如果因为检查点(checkpoint)操作没有执行完成造成不能切换,会记录不能切换的原因;对数据库进行的某些操作,如创建或删除表空间、增加数据文件;数据库发生的错误,如表空间不够、出现坏块、数据库内部错误(ORA600)等。定期检查日志文件,根据日志中发现的问题及时进行处理:问题处理启动参数不对检查初始化参数文件因为检查点操作或归档操作没有完成造重做日志不能切换如果经常发生这样的情况,可以考虑增加重做日日志文件组;想办法提高检查点或归档操作的效率;有人XX删除了表空间检查数据库的安全问题,是否密码太简单;如有必要,撤消某些用户的系统权限出现坏块检查是否是硬件问题(如磁盘本生有坏块),如果不是,检查是那个数据库对象出
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1