Oracle学习-启动与关闭
2016-08-08 10:50
204 查看
Oracle启动分为3种过程,关闭分为四种方式
启动
1、nomount 模式【加载实例和spfile(参数文件)】路径:cd $ORACLE_HOME/dbs
查看:strings spfile实例.ora【它不是文本文件,是二进制文件】
strings spfile$ORACLE_SID.ora
ecom.__db_cache_size=188743680 【数据缓存大小】
ecom.__java_pool_size=4194304 【JAVA池大小】
ecom.__large_pool_size=4194304 【大池大小】
ecom.__shared_pool_size=83886080 【共享池大小】
ecom.__streams_pool_size=0 【流池大小】
*.audit_file_dest='/oracle/app/admin/ecom/adump' 【审计文件存放路径】
*.background_dump_dest='/oracle/app/admin/ecom/bdump' 【进程捕获文件存放路径】
*.compatible='10.2.0.1.0' 【当前库版本号】
*.control_files='/oracle/app/oradata/ecom/control01.ctl','/oracle/app/oradata/ecom/control02.ctl','/oracle/app/oradata/ecom/control03.ctl' 【控制文件路径】
*.core_dump_dest='/oracle/app/admin/ecom/cdump' 【核心的捕获文件存放路径】
*.db_block_size=8192 【块大小】
*.db_domain='' 【域名字】
*.db_file_multiblock_read_count=16 【一次最多可以读多少块】
*.db_name='ecom' 【库名字】
*.db_recovery_file_dest='/oracle/app/flash_recovery_area' 【闪回区域】
*.db_recovery_file_dest_size=2147483648 【闪回区域大小:2147483648/1024/1024/1024=2G】
*.dispatchers='(PROTOCOL=TCP) (SERVICE=ecomXDB)' 【开启的TCP网络协议,和监听有关系】
*.job_queue_processes=10 【工作进程数,后台的计划任务】
*.open_cursors=300 【开启的游标数】
*.pga_aggregate_target=94371840 【PGA大小】
*.processes=150 【开启的最大进程数】
*.remote_login_passwordfile='EXCLUSIVE' 【登录验证的方式】
*.sga_target=285212672 【SGA大小】
*.undo_management='AUTO' 【uodo表空间管理的方式】
*.undo_tablespace='UNDOTBS1' 【当前回滚表空间】
*.user_dump_dest='/oracle/app/admin/ecom/udump' 【用户捕获文件存放路径】
2、mount 加载控制文件(记录数据文件和日志文件的位置)
到Mount状态,加载完控制文件,目的是往后加载,加载日志文件和控制文件。
控制文件路径:cd $ORACLE_BASE/oradata/$ORACLE_SID/
查看:strings control01.ctl
数据文件和日志文件路径
表空间名称
3、open 加载日志文件和数据文件
所有的数据库都会有日志文件,日志文件记录着你所有的动作,通过日志才能保证你数据库的完整性。
数据文件,咱们建的表,往表里插入的数据,在操作层面全是插入到数据文件中。
路径:cd $ORACLE_BASE/oradata/$ORACLE_SID/
oracle 单实例单库,一个实例上只能创建一个库
mysql 单实例多库
窗口1
SQL> shutdown immediate;
cd $ORACLE_BASE/admin/$ORACLE_SID/bdump
tail -f -n 200 alert_$ORACLE_SID.log【oracle的一些改变都会放在alert日志中,验证启动流程】
窗口2
SQL> startup
关闭
shutdown normal 需要等待所有事务/进程全部结束 才能关数据库【严谨性最好,但是没有人用】shutdown transactional 需要等待,但在等待过程中,先把空闲事务进程自动关闭,活动的等人家工作完毕了,再关闭。
上面2种基本很少使用
shutdown immediate 关闭之前同步数据【该同步数据的同步,没有同步的就释放掉,对于你当前的操作,它会告诉你失败了】(生产关闭数据库常用)
以上3种,第3种方式关闭速度最快啊。这种方式不会丢数据。
【oracle为了严谨性, insert update delete操作后,要加上commit,才能生效 (开2个窗口,不commit操作,举个例子)】
客户操作完毕,打了commit操作,传输到服务器端,先写在内存中,然后往硬盘中写,因为内存的数据容易丢。
客户操作完毕,没有打commit操作,传输到服务器端,先写在内存中,现在我一重启,这些操作没有提交,就失效了。
窗口1
insert操作,不commit;
窗口2
shutdown normal;【一直卡着不动】
举例:
窗口1
insert操作,不commit;
窗口2
shutdown immediate;【提交的数据会同步到磁盘,但是没有提交的数据,直接丢弃了。没有丢失数据,会告诉你操作失败了。】
shutdown abort 强制关闭数据库相当于断电(它的速度最快,此动作非常危险,容易失数据)
启动数据库
startup 直接打此命令默认选项为open直接打开数据库
startup nomount 只启动实例(装载实例和打开参数文件)
startup mount 挂载数据库(装载实例和打开控制文件,激活某些功能,用户不能存取数据库可以进行实例或数据的恢复处理)
alter database mount 改变数据库从nomount状态到mount状态
alter database open 打开数据库(此时才可以正常对数据库进行读写)
alter database open read only 将数据库打开到只读状态(用得特别少)
startup force 重启数据库 【先shutdown abort ,然后startup ,生产中不会用,特别危险】
----------------------------------------------------------
生产关库:有些大哥直接在操作系统中直接reboot,这么操作库很容易出现问题,无法恢复
正常关闭过程:
1、关闭应用
2、查看数据库备份
3、正常关监听
4、正常关库shutdown immediate 【如果特别慢,可以编写脚本实现】
5、重启操作系统
相关文章推荐
- oracle 学习之:oracle启动与关闭
- ORACLE DBA学习笔记--启动和关闭数据库
- Oracle 12c 学习之启动关闭CDB&PDB
- Oracle 学习笔记1 —— 启动,关闭
- Oracle学习(二)--启动与关闭
- oracle 学习之:oracle启动与关闭
- Oracle学习(二)--启动与关闭
- Oracle 自动启动与关闭
- oracle笔记整理六[数据库启动与关闭]
- Oracle 数据库的启动和关闭的方式!
- oracle快速启动关闭sh程序
- Oracle 10G for Linux/Unix 启动/关闭脚本
- Oracle 9i 数据库异常关闭后的启动
- oracle启动关闭文件命令
- Oracle DBA启动和关闭例程试题
- cmd命令启动/关闭Oracle服务
- Oracle 启动与关闭例程
- aix下自动启动关闭oracle;自动启动和关闭其他应用程序
- 在Linux中设置系统启动和关闭时自动启动和关闭Oracle
- linux下使用脚本启动和关闭oracle