十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1)取消Oracle DB的归档模式: startup mount;alter database noarchivelog;archive log stop;2)手动添加数据库名/SID 等, 或者从 $Ora_home\network\admin\tnsnames.ora中读取.3)System/sys 的密码是你安装数据库时候的密码,当然也可以自己建一个User ;
创新互联是专业的蒙阴网站建设公司,蒙阴接单;提供网站设计、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行蒙阴网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
查看oracle数据库是否为归档模式
SQL select name,log_mode from V$database;
NAME LOG_MODE
------------------ ------------------------
TEST NOARCHIVELOG
SQL archive log list
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 80157
Current log sequence 80163
编辑本段配置数据库的.归档模式
1.改变非归档模式到归档模式:
1)SQL conn / as sysdba (以DBA身份连接数据库)
2)SQL shutdown immediate;(立即关闭数据库)
3)SQL startup mount (启动实例并加载数据库,但不打开)
4)SQL alter database archivelog; (更改数据库为归档模式)
5)SQL alter database open; (打开数据库)
6)SQL alter system archive log start; (启用自动归档)
7)SQL exit (退出)
做一次完全备份,因为非归档日志模式下产生的备份日志对于归档模式已经不可用了.这一步非非常重要!
2.改变归档模式到非归档模式:
1)SQLSHUTDOWN NORMAL/IMMEDIATE;
2)SQLSTARTUP MOUNT;
3)SQLALTER DATABASE NOARCHIVELOG;
4)SQLALTER DATABASE OPEN;
3.归档相关命令
archive log stop;
archive log start;
archive log list;
show parameters;
show parameters log_archive_start;
show parameters log_archive_max_process; #归档进程数
alter system set log_archive_max_process=5; #将归档进程数改为5
select * from v$bgprocess; #检察后台进程
一 设置为归档方式
Sql代码
sql archive log list; #查看是不是归档方式
sql alter system set log_archive_start=true scope=spfile; #启用主动归档
sql alter system set log_archive_dest=''location=/oracle/ora9/oradata/arch'' scope=spfile;#设置归档路径
sql alter system set log_archive_dest_1=''location=/oracle/ora9/oradata/arch1'' scope=spfile;
sql alter system set log_archive_dest_2=''location=/oracle/ora9/oradata/arch2'' scope=spfile;
#如果归档到两个位置,则可以通过上边方法实现
sql alter system set log_archive_format=''arch_%d_%t_%r_%s.log'' #设置归档日记款式
sql shutdown immediate;
sql startup mount; #打开控制文件,不打开数据文件
sql alter database archivelog; #将数据库切换为归档模式
sql alter database open; #将数据文件打开
sql archive log list; #查看此时是否处于归档模式
查询以确定数据库位于archivelog模式中且归档过程正在运行
sql select log_mode from v$database;
sql select archiver from v$instance;
Sql代码
日志切换
sql alter system switch logfile;
这次日志切换将归档写到两个目标地,
即上边的/oracle/ora9/oradata/arch1和/oracle/ora9/oradata/arch1,
要是要对目录确认
在oracle情况中运行如下查询:
sql select name from v$archived_log;
而后在操作系统中确认查询所列出的文件
二 设置非归档方式
Sql代码
sql archive log list; #查看是否是归档方式
sql alter system set log_archive_start=false scope=spfile;
#禁用自动归档
sql shutdown immediate;
sql startup mount; #打开控制文件,不打开数据文件
sql alter database noarchivelog; #将数据库切换为非归档模式
sql alter database open; #将数据文件打开
sql archive log list; #查看此时便处于非归档模式
三 归档相关命令
Sql代码
archive log stop;
archive log start;
archive log list;
show parameters;
show parameters log_archive_start;
show parameters log_archive_max_process; #归档进程数
alter system set log_archive_max_process=5; #将归档进程数改为5
select * from v$bgprocess; #检察后台进程
最大的影响恐怕还不是在线备份,而是recovery,如果没有archivelog,到时点的recovey将无法 实现,在数据库突然异常的时候,最近的备份可能已是数小时前了(离线总不能每隔几个小时就 搞一个吧),那么上次离线备份到崩溃时点的数据库操作将无法重做 你说的是带库容量低,不是速度的问题吧?那么手工更换备份介质(磁带)应该是可以的吧?这 个会增加人力成本,但是实施成本并不高,远低于更换带库的成本的吧