oracle模式怎么设置,oracle表模式

3ORACLE数据库日志有哪几种模式,如何在不同模式中切换?

有两种模式:

创新互联建站是专业的南城网站建设公司,南城接单;提供成都网站建设、成都网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行南城网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

一:日志模式,日志模式的设置分为Archive

Mode和No

Archive

Mode。

二:自动归档模式:自动归档模式的设置分为:Enabled和Disabled

可用可用archive

log

list命令来查看数据库的现行日志和自动归档模式的设置。

希望对你有帮助。

如何将oracle数据库 设置为归档模式

查看归档状态为非归档

sys@JSL select log_mode from v$database;

LOG_MODE

------------

NOARCHIVELOG

archive状态Disabled

sys@JSL archive log list

Database log mode No Archive Mode

Automatic archival Disabled

Archive destination USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence 2

Current log sequence 4

sys@JSL select * from v$archive_processes;

PROCESS STATUS LOG_SEQUENCE STAT

---------- ---------- ------------ ----

0 STOPPED 0 IDLE

1 STOPPED 0 IDLE

2 STOPPED 0 IDLE

3 STOPPED 0 IDLE

...

...

29 STOPPED 0 IDLE

修改为归档模式

首先要关闭数据库,启动到mount状态。

sys@JSL shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

sys@JSL startup mount

ORACLE instance started.

Total System Global Area 184549376 bytes

Fixed Size 1218412 bytes

Variable Size 62916756 bytes

Database Buffers 117440512 bytes

Redo Buffers 2973696 bytes

Database mounted.

修改为归档模式

sys@JSL alter database archivelog;

Database altered.

oracle 9i还要设置log_archive_start 这是个静态参数

alter system set log_archive_start=true scope=spfile;

oracle 10g则不用设置了。

验证修改结果

sys@JSL select log_mode from v$database;

LOG_MODE

------------

ARCHIVELOG

打开数据库

sys@JSL alter database open;

Database altered.

设置归档格式

log_archive_format,是设置归档命名规则的静态参数,设置后重启数据库才生效。

对log_archive_dest和log_archive_dest_n指定的归档有效。

常用参数如下

%s log sequence number

%S log sequence number, zero filled

%t thread number

%T thread number, zero filled

%a activation ID

%d database ID

%r resetlogs ID

resetlogs,防止恢复的时候会报错,归档默认文件扩展名是dbf,习惯设置成arc

例如:_%t_%s_%r.arc

sys@JSL select name from v$database;

NAME

------------------------------

JSL

sys@JSL alter system set log_archive_format='jsl_%t_%s_%r.arc' scope=spfile;

System altered.

重启数据库才生效。

sys@JSL archive log list

Database log mode Archive Mode

Automatic archival Enabled

Archive destination USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence 2

Next log sequence to archive 4

Current log sequence 4

sys@JSL alter system switch logfile;

System altered.

archive变成Enabled,我们没有设置归档目的地,

默认USE_DB_RECOVERY_FILE_DEST使用DB_RECOVERY_FILE_DEST目录,也就是我们常说的闪回目录。

sys@JSL archive log list

Database log mode Archive Mode

Automatic archival Enabled

Archive destination USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence 3

Next log sequence to archive 5

Current log sequence 5

查看当前日志组

sys@JSL select * from v$log;

GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIME

------ ------- --------- -------- -------- --- --------- ------------- -----------------

1 1 5 52428800 1 NO CURRENT 1565953 20101206 17:57:21

2 1 4 52428800 1 YES ACTIVE 1559083 20101206 15:07:00

3 1 3 52428800 1 YES INACTIVE 1534317 20101206 10:44:06

切换日志

alter system archive log current; --先归档再切换

alter system switch logfile; --先切换至于能不能归档再说

sys@JSL alter system switch logfile;

System altered.

查看已经归档的信息

sys@JSL select RECID,NAME,DEST_ID,SEQUENCE#,RESETLOGS_CHANGE#,ARCHIVED,STATUS ,BACKUP_COUNT from v$archived_log;

RECID NAME DEST_ID SEQUENCE# RESETLOGS_CHANGE# ARC S BACKUP_COUNT

----- ------------------------------ ---------- ---------- ----------------- --- - ------------

1 /u01/app/oracle/flash_recovery 10 1 1484108 YES A 0

_area/HYJT/archivelog/2010_12_

05/o1_mf_1_1_6hq6z3db_.arc

2 /u01/app/oracle/flash_recovery 10 4 1484108 YES A 0

_area/JSL/archivelog/2010_12_0

6/o1_mf_1_4_6hsdw1mv_.arc

3 /u01/app/oracle/flash_recovery 10 5 1484108 YES A 0

_area/JSL/archivelog/2010_12_0

6/o1_mf_1_5_6hsdx63y_.arc

查看归档进程,开启了三个归档进程

sys@JSL select * from v$archive_processes;

PROCESS STATUS LOG_SEQUENCE STAT

---------- ---------- ------------ ----

0 ACTIVE 0 IDLE

1 ACTIVE 0 IDLE

2 ACTIVE 0 IDLE

3 STOPPED 0 IDLE

...

...

29 STOPPED 0 IDLE

如果归档进程报错,8i可以使用下面命令尝试解决

archive log stop;

archive log start;

10版本的archive log stop/start及alter system archive log stop/start命令已经不用了,只要在归档模式下就是自动归档模式

设置归档目录

默认的归档目录(Archive destination)是: USE_DB_RECOVERY_FILE_DEST,

如果取消DB_RECOVERY_FILE_DEST参数的设置,就会找standby_archive_dest参数,

默认是'?/dbs/arch'但是没有真实目录存在,所以虽然能开启归档但是不能实现归档。

设置方式:

A: log_archive_dest_n (1-10) 这个参数与B是冲突的,可以设置本地和远程作为归档目标地址。

下面有十个状态参数log_archive_dest_state_n (1-10)与之对应,enable才可用。

例:

log_archive_dest_state_1=DEFER

log_archive_dest_state_2=ENABLE

此参数和log_archive_dest_n参数配对使用,缺省值为ENABLE,如果想停止使用一个归档目录,只需将其对应的log_archive_dest_state_n参数值设置为DEFER。

log_archive_dest_n 其中n为1-5的整数,必需从低到高设置,下面举例说明:

log_archive_dest_1="LOCATION=/jia/arc MANDATORY REOPEN"

log_archive_dest_2="SERVICE=standby_db1 MANDATORY REOPEN=600"

log_archive_dest_3="LOCATION=/jia/arc2 OPTIONAL"

location指的是本地目录。

service是tnsname里指定的名称,可以实现连接到远程。

MANDATORY 关键字说明联机日志文件必须要成功归档以后才能被覆盖。

OPTIONAL 缺省为可选(OPTIONAL),即使归档没有成功也可以覆盖。

在设置时应该至少有一个本地(LOCATION)强制(MANDATORY)归档目录。

REOPEN 关键字说明如果归档不成功时系统要重新尝试归档,缺省每300秒尝试一次直到成功。

reopen可以通过=n来指定尝试的时间间隔,如 log_archive_dest_2中的时间间隔为600秒,

而log_archive_dest_1中的时间间隔为300 秒。

alter system set log_archive_dest_1='location=/xxx/xxx/x/ mandatory reopen=500';

B: log_archive_dest和log_archive_duplex_dest 这个参数与A是冲突的,只能设置本地目录,

log_archive_dest可以单独存在,但是log_archive_duplex_dest必须依附于log_archive_dest

log_archive_dest这是一个静态参数,设置的时候要带scope=spfile

sys@JSL alter system set log_archive_dest='';

alter system set log_archive_dest=''

*

ERROR at line 1:

ORA-02097: parameter cannot be modified because specified value is invalid

ORA-16018: cannot use LOG_ARCHIVE_DEST with LOG_ARCHIVE_DEST_n or DB_RECOVERY_FILE_DEST

带上scope=spfile参数就不会有上面的报错信息了

sys@JSL alter system set log_archive_dest='/jia/arc' scope=spfile;

System altered.

如果使用这种方式,则log_archive_dest是强制(MANDATORY)归档目录,而log_archive_duplex_dest为可选(OPTIONAL)目录。

C: db_recovery_file_dest 这个参数还有个辅助参数db_recovery_file_dest_size控制大小。

那么着三种方式是否可以同时设置,以及那个方式设置的生效呢?

我们用下图示加以说明:

A(n) B(y) C(y) - oracle同时归档日志到log_archive_dest和db_recovery_file_dest指定的目录,C采用omf管理管理方式

A(n) B(y) C(n) - 1份归档B

A(y) B(y) C(n) - error A与B是冲突的

A(y) B(n) C(y) - 1份归档A,如果设置了A,C就失效了。

在10g跟开归档跟flashback_on状态无关,但是反过来开数据库闪回功能必须先开归档。设置log_archive_dest以后重启数据库才生效。

如何修改oracle优化器模式

ALTER SYSTEM SET OPTIMIZER_MODE=ALL_ROWS scope=both;

其他可以选择的模式还有RULE/CHOOSE/FIRST_ROWS/ALL_ROWS。

应用系统优化最好对大查询单独调优,修改优化器模式之后,有可能别的查询又会变慢。

如何让oracle 处于RESTRICTED模式

alter system enable restricted session;\x0d\x0a如果需要取消\x0d\x0aalter system disable restricted session; \x0d\x0a\x0d\x0a需要注意的是RESTRICTED模式以后 除了管理员都不能登录,如果需要非管理员登录,必须\x0d\x0aGRANT restricted session to test;

oracle数据库如何切换模式

oracle dg 三大模式切换

1、最大性能模式MAXIMUM PERFORMANCE --默认模式,最大性能模式特点。

192.168.1.181

SQL select database_role,protection_mode,protection_level from v$database;

DATABASE_ROLE  PROTECTION_MODE   PROTECTION_LEVEL

---------------- -------------------- --------------------

PRIMARY     MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

SQL col dest_name for a25

SQL select dest_name,status from v$archive_dest_status;

DEST_NAME         STATUS

------------------------- ---------

LOG_ARCHIVE_DEST_1    VALID

LOG_ARCHIVE_DEST_2    VALID

SQL show parameter log_archive

NAME                 TYPE    VALUE

------------------------------------ ----------- ---------------------------

log_archive_config          string   dg_config=(orcl,db01)

log_archive_dest_1          string   location=/home/oracle/arch_orc

l valid_for=(all_logfiles,all_

roles) db_unique_name=orcl

log_archive_dest_2          string   service=db_db01 LGWR ASYNC val

id_for=(online_logfiles,primar

y_roles) db_unique_name=db01

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_orcl

Oldest online log sequence   31

Next log sequence to archive  33

Current log sequence      33

192.168.1.183

SQL select database_role,protection_mode,protection_level from v$database;

DATABASE_ROLE  PROTECTION_MODE   PROTECTION_LEVEL

---------------- -------------------- --------------------

PHYSICAL STANDBY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

SQL col dest_name for a25

SQL select dest_name,status from v$archive_dest_status;

DEST_NAME         STATUS

------------------------- ---------

LOG_ARCHIVE_DEST_1    VALID

LOG_ARCHIVE_DEST_2    VALID

SQL show parameter log_archive

NAME                 TYPE    VALUE

------------------------------------ ----------- ---------------------------

log_archive_config          string   dg_config=(db01,orcl)

log_archive_dest_1          string   location=/home/oracle/arch_db0

1 valid_for=(all_logfiles,all_

roles) db_unique_name=db01

log_archive_dest_2          string   service=db_orcl LGWR ASYNC val

id_for=(online_logfiles,primar

y_roles) db_unique_name=orcl

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_orcl

Oldest online log sequence   31

Next log sequence to archive  33

Current log sequence      33

192.168.1.181

SQL alter system switch logfile;

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_orcl

Oldest online log sequence   32

Next log sequence to archive  34

Current log sequence      34

192.168.1.183

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_db01

Oldest online log sequence   32

Next log sequence to archive  0

Current log sequence      34

2 、最大性能模式--切换到--最大高可用  (默认是最大性能模式---MAXIMUM PERFORMANCE)。

192.168.1.181

SQL select DATABASE_ROLE,PROTECTION_MODE,PROTECTION_LEVEL from v$database; 

DATABASE_ROLE  PROTECTION_MODE   PROTECTION_LEVEL

---------------- -------------------- --------------------

PRIMARY     MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

SQL show parameter log_archive_dest_2

NAME                 TYPE    VALUE

------------------------------------ ----------- ---------------------------

log_archive_dest_2          string   service=db_db01 LGWR ASYNC val

id_for=(online_logfiles,primar

y_roles) db_unique_name=db01

192.168.1.181

SQL shutdown immediate

192.168.1.183

SQL alter database recover managed standby database cancel;

SQL shutdown immediate

192.168.1.181

SQL startup mount;

SQL alter database set standby database to maximize availability;

SQL alter system set log_archive_dest_2='service=db_db01 LGWR SYNC valid_for=(online_logfiles,primary_roles) db_unique_name=db01' scope=spfile;

192.168.1.183

SQL startup nomount

SQL alter database mount standby database;

SQL alter system set log_archive_dest_2='service=db_orcl LGWR SYNC valid_for=(online_logfiles,primary_roles) db_unique_name=orcl' scope=spfile;

SQL shutdown immediate

SQL startup nomount

SQL alter database mount standby database;

192.168.1.181

SQL startup

SQL col dest_name for a25

SQL select dest_name,status from v$archive_dest_status;

DEST_NAME         STATUS

------------------------- ---------

LOG_ARCHIVE_DEST_1    VALID

LOG_ARCHIVE_DEST_2    VALID

SQL show parameter log_archive_dest_2

NAME                 TYPE    VALUE

------------------------------------ ----------- ---------------------------

log_archive_dest_2          string   service=db_db01 LGWR SYNC vali

d_for=(online_logfiles,primary

_roles) db_unique_name=db01

SQL select database_role,protection_level,protection_mode from v$database;

DATABASE_ROLE  PROTECTION_LEVEL   PROTECTION_MODE

---------------- -------------------- --------------------

PRIMARY     MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_orcl

Oldest online log sequence   34

Next log sequence to archive  36

Current log sequence      36

192.168.1.183

SQL col dest_name for a25

SQL select dest_name,status from v$archive_dest_status;

DEST_NAME         STATUS

------------------------- ---------

LOG_ARCHIVE_DEST_1    VALID

LOG_ARCHIVE_DEST_2    VALID

SQL show parameter log_archive_dest_2

NAME                 TYPE    VALUE

------------------------------------ ----------- ---------------------------

log_archive_dest_2          string   service=db_orcl LGWR SYNC vali

d_for=(online_logfiles,primary

_roles) db_unique_name=orcl

SQL select database_role,protection_level,protection_mode from v$database;

DATABASE_ROLE  PROTECTION_LEVEL   PROTECTION_MODE

---------------- -------------------- --------------------

PHYSICAL STANDBY MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_db01

Oldest online log sequence   35

Next log sequence to archive  0

Current log sequence      36

192.168.1.181

SQL alter system switch logfile;

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_orcl

Oldest online log sequence   35

Next log sequence to archive  37

Current log sequence      37

192.168.1.183

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_db01

Oldest online log sequence   36

Next log sequence to archive  0

Current log sequence      37

3、最大高可用--切换到--最保护能模式,DG最大保护模式Maximum protection。

192.168.1.181

SQL shutdown immediate

192.168.1.183

SQL shutdown immediate

192.168.1.181

SQL alter database set standby database to maximize protection;

SQL shutdown immediate

192.168.1.183

SQL startup nomount

SQL alter database mount standby database;

192.168.1.181

SQL startup

SQL col dest_name for a25

SQL select dest_name,status from v$archive_dest_status;

DEST_NAME         STATUS

------------------------- ---------

LOG_ARCHIVE_DEST_1    VALID

LOG_ARCHIVE_DEST_2    VALID

SQL show parameter log_archive_dest_2

NAME                 TYPE    VALUE

------------------------------------ ----------- ---------------------------

log_archive_dest_2          string   service=db_db01 LGWR SYNC vali

d_for=(online_logfiles,primary

_roles) db_unique_name=db01

SQL select database_role,protection_level,protection_mode from v$database;

DATABASE_ROLE  PROTECTION_LEVEL   PROTECTION_MODE

---------------- -------------------- --------------------

PRIMARY     MAXIMUM PROTECTION  MAXIMUM PROTECTION

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_orcl

Oldest online log sequence   37

Next log sequence to archive  39

Current log sequence      39

192.168.1.183

SQL col dest_name for a25

SQL select dest_name,status from v$archive_dest_status;

DEST_NAME         STATUS

------------------------- ---------

LOG_ARCHIVE_DEST_1    VALID

LOG_ARCHIVE_DEST_2    VALID

SQL show parameter log_archive_dest_2

NAME                 TYPE    VALUE

------------------------------------ ----------- ---------------------------

log_archive_dest_2          string   service=db_db01 LGWR SYNC vali

d_for=(online_logfiles,primary

_roles) db_unique_name=db01

SQL select database_role,protection_level,protection_mode from v$database;

DATABASE_ROLE  PROTECTION_LEVEL   PROTECTION_MODE

---------------- -------------------- --------------------

PRIMARY     MAXIMUM PROTECTION  MAXIMUM PROTECTION

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_db01

Oldest online log sequence   37

Next log sequence to archive  0

Current log sequence      39

192.168.1.181

SQL alter system switch logfile;

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_orcl

Oldest online log sequence   38

Next log sequence to archive  40

Current log sequence      40

192.168.1.183

SQL archive log list

Database log mode       Archive Mode

Automatic archival       Enabled

Archive destination      /home/oracle/arch_db01

Oldest online log sequence   37

Next log sequence to archive  0

Current log sequence      40

如何设置oracle为共享模式

 一、将数据库操作模式改为共享服务器模式

注:在Oracle数据库服务器本机操作。

1、 点击开始,从程序菜单选择“Database Configuration Assistant”,如下图所示。

2、 进入“欢迎使用”界面后,点击“下一步”,如下图所示。

3、 进入“步骤1(共4步):操作”界面后,选择“在数据库中配置数据库选项”,点击“下一步”,如下图所示。

4、 进入“步骤2(共4步):数据库”界面后,选择可用数据库(本机Oracle数据库服务名),点击“下一步”,如下图所示。

5、 进入“步骤3(共4步):数据库特性”界面后,点击“下一步”,如下图所示。

6、 进入“步骤4(共4步):数据库连接选项”界面后,选择“共享服务器模式”,点击“编辑共享连接参数…”,如下图所示。

7、

进入“共享服务器模式”界面后,协议选择为TCP;调度程序数设置为5;每个调度程序的最大连接数设置为100;最大调度程序数设置为5;最大服务器进程数设置为600,点击“确定”,如下图所示。

8、 返回到“步骤4(共4步):数据库连接选项”界面后,点击“完成”,如下图所示。

9、 系统弹出“重新启动数据库”提示,点击“是”,如下图所示。

10、进入“概要”界面后,点击“确定”,数据库配置正在进行…如下图所示。

11、系统弹出“数据库配置已成功完成。是否要执行其他操作?”提示,点击“否”,如下图所示。

12、数据库操作模式改为共享服务器模式已完成!


当前文章:oracle模式怎么设置,oracle表模式
地址分享:http://azwzsj.com/article/hoeejh.html