Oracle 日常基本运维命令及基本体系结构
Oracle 是一个庞大的系统,对于初学者来说,难免会有些无从下手的感觉,什么都想学,结果什么都学不好,那么从哪开始学好呢?如果在大学期间学过数据库理论,或有一定的数据库基础自然很好;如果没有的话,真的是个大问题,我个人认为还是应该从日常基本运维命令及基本体系结构学起,下面我分享一下我常用的运维命令及总结的体系结构。
一、Oracle 日常基本运维命令
- ****Oracle ****打开数据库
# su – oracle
$ sqlplus
Enter user-name: con /as sysdba
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 – 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SYS@orcl>startup [nomount|mount|startup]
备注:打开数据库 startup 可带三个参数,分别是
SYS@orcl> startup nomount 仅启动 instances
SYS@orcl> startup mount 启动 instances, 连上 (mount) 数据库
SYS@orcl> startup normal 启动 instances, 连上 (mount) 数据库(推荐)
打开 (open) 数据库
startup 缺省参数是 normal
2. 启动 Oracle Listener
#su – oracle
$lsnrctl start
- 关闭 Oracle Listener
#su – oracle
$lsnrctl stop
- ****Oracle ****关闭数据库
SYS@orcl> shutdown immediate
- 查找 Oracle 软件位置
$ cd $ORACLE_HOME
$ pwd
/u01/app/oracle/product/10.2.0/db_1
- 查找 Oracle 数据库的位置
$ cd $ORACLE_BASE
$ pwd
/u01/app/oracle
备注:Oracle 数据库软件的文件和 Oracle 数据库的文件可以分开存储到两个地方。
我们最常使用的几乎全部的在生产环境里面的存放结构是:Oracle 数据库软件存放在服务器本地硬盘上而 Oracle 数据库存放在存储上
- 查看是否存在 Oracle 实例
$ ps -ef|grep ora
oracle 8888 1 0 08:88 ? 00:00:00 ora_pmon_yxxt
- 查看内存状态
$ ipcs
—— Shared Memory Segments ——–
key shmid owner perms bytes nattch status
- 查询数据文件路径
SYS@orcl>select FILE_NAME from dba_data_files;
FILE_NAME
—————————————————
/data/oracle/app/oradata/orcl/users01.dbf
/data/oracle/app/oradata/orcl/undotbs01.dbf
/data/oracle/app/oradata/orcl/sysaux01.dbf
/data/oracle/app/oradata/orcl/system01.dbf
/data/oracle/app/oradata/orcl/essc5DBSpace_01.dbf
/data/oracle/app/oradata/orcl/tkmsDBSpace_01.dbf
6 rows selected.
10. 查询重做日志文件
SYS@orcl>select * from v$logfile;
3 ONLINE
/data/oracle/app/oradata/orcl/redo03.log
NO
2 ONLINE
/data/oracle/app/oradata/orcl/redo02.log
NO
1 ONLINE
/data/oracle/app/oradata/orcl/redo01.log
NO
11. 查询控制文件
SYS@orcl>select * from v$controlfile;
/data/oracle/app/oradata/orcl/control01.ctl
NO 16384 720
/data/oracle/app/fast_recovery_area/orcl/control02.ctl
NO 16384 720
12. 查看是否启用了归档模式
SYS@orcl> archive log list;
13. 查看归档路径
SYS@orcl>show parameter log_archiverd_dest ;
SYS@orcl>select name from v$archived_log ;
二、Oracle 基本体系结构
1.********Oracle 实例有 SGA,SGA 中有六个池子,还有五个后台进程。
2.******Oracle**** 三****大文件**,控制文件、数据文件、重做日志文件
****2.1 控制文件:**** 存放数据库的物理结构信息,所谓的物理结构,主要是数据库有多少数据文件,数据文件分别放在什么位置,Oracle 数据库有多少 redolog 文件,这些文件分别放在什么位置;存放数据库的当前运行的一些状态信息,比如说那个数据文件是在线正常的,哪些数据文件是离线不正常的,Oracle 数据库当前正在使用着众多重做日志文件的哪一个,哪一些日志文件有一些问题。
****2.2 数据文件:**** 里面放的是 Oracle 实在的数据文件数据,Oracle 数据主要放的是表,表信息就放在数据文件里面,控制文件会很小,但是数据文件会很大,因为 Oracle 所有的数据全部放在数据文件里面。
****2.3 重做日志文件:**** 日志文件里放的是日志,日志记录的是 Oracle 对数据库、对数据文件所做的所有的修改,全部会以日志的方式记录在日志文件中。它记录的是数据文件的变化过程。
****3.****Oracle 有六大内存块,共享池、streams 池、大型池、java 池、数据库缓冲区高速缓存、重做日志缓冲区。
****4.Oracle******** 有五大后台进程,**** 检查点 (CKPT)、系统监视器 (SMON)、进程监视器 (PMON)、数据库写进程 (DBWn)、日志写进程 (LGWR)。