`

oracle alter system命令使用

阅读更多
我們可以利用alter system語句在數據庫咝羞^程中修改初始化參數的值。
如果instance在啟動時使用的是文本初始化參數文件,那樣我們在利用alter system語句修改的初始化參數僅在當前的instance中有效,
并且所做的修改不會記錄在初始化參數文件中。如果我們要永久的修改初始參數,則需要手工的編輯文本初始化參數文件。
如果instance在啟動時使用的是服務器初始化參數文件(spfile),這樣我們就可以省去手工編輯初始化參數文件的麻煩。
在使用alter system語句時,可以在set子句中通過指定scope的值來設定alter system語句的影響范圍。
所謂影響范圍是指:
1.對當前instance(實例)有效,只記錄在內存中,重啟DB就會消失。
2.永久有效,所做的修改會記錄到服務器初始化參數文件中,重啟DB不會消失。
SCOPE的設定取值有如下三種:
1. scope=spfile: 對參數的修改僅記錄在務器初始化參數文件中,修改后的參數在下次啟動DB時生效。適用于動態和靜態初始化參數。
2. scope=memory: 對參數的修改僅記錄在內存中,對于動態初始化參數的修改立即生效。在重啟DB后會丟失,會復原為修改前的參數值。
3. scope=both:   對參數的修改會同時記錄在服務器參數文件和內存中,對動態參數立即生效,對靜態參數不能用這個選項。
   如果使用了服務器參數文件,則在執行alter system語句時,scope=both是default的選項。
   如果沒有使用服務器參數文件,而在執行alter system語句時指定scope=spfile|both都會出錯。

注意點:
1. 在修改靜態初始化參數時,我們只能指定scope=spfile;
2. 在修改動態初始化參數時,我們可以指定 deferred 關鍵字來對所做的修改延遲到新的session產生時生效。
3. 如果修改的初始化參數是由多個字符串姐成的值,必需用同時設定不需變化部分的值,alter system不支持指定位置的修改。


下面我們來看一個對靜態參數log_buffer的修改的全過程。

Microsoft Windows 2000 [Version 5.00.2195]
(C) Copyright 1985-2000 Microsoft Corp.

C:Documents and SettingsAdministrator>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期六 3月 12 10:51:36 2005

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> conn sys/password@ora9i as sysdba
已連線.
SQL> show parameter log_buff

NAME                                 TYPE      VALUE
------------------------------------ ---------------------- ------------------------------
log_buffer                           integer      524288

SQL> alter system set log_buffer =655360 scope=both;
alter system set log_buffer =655360 scope=both
                 *
ERROR 在行 1:
ORA-02095: 無法修改所指定的初使化參數


SQL> alter system set log_buffer =655360 ;
alter system set log_buffer =655360
                 *
ERROR 在行 1:
ORA-02095: 無法修改所指定的初使化參數


SQL> alter system set log_buffer =655360 scope=spfile;

已更改系統.

SQL> alter system set log_buffer =655360 scope=memory;
alter system set log_buffer =655360 scope=memory
                 *
ERROR 在行 1:
ORA-02095: 無法修改所指定的初使化參數


SQL> show parameter log_buff

NAME                                 TYPE      VALUE
------------------------------------ ---------------------- ------------------------------
log_buffer                           integer      524288

SQL> startup force;
已啟動 ORACLE 執行處理.

Total System Global Area 135471092 bytes
Fixed Size                   454644 bytes
Variable Size             109051904 bytes
Database Buffers           25165824 bytes
Redo Buffers                 798720 bytes
資料庫已掛載.
資料庫已開啟.
SQL> show parameter log_buffer

NAME                                 TYPE      VALUE
------------------------------------ ---------------------- ------------------------------
log_buffer                           integer      655360

另外一篇英文:
Alter system archive log [start|stop|all|...]

alter system archive log all;
alter system archive log next;
alter system archive log sequence 104;
alter system archive log current;
alter system archive log current noswitch;
The following command can be used to stoparch.
alter system archive log stop
Similarly, arch is started with
alter system archive log start
However, changing the archiver this way doesn't last when the database is restarted. When the database is started, it consultslog_archive_startin the initialization file to determine ifarchis started.
Alter system archive log all

This command is used tomanually archive redo logs.
alter system disconnect session

alter system kill session

alter system kill session 'session-id,session-serial'
This command kills asession. Thesession-idandsession-serialparameters are found in thev$sessionview (columnssidandserial#.
alter system checkpoint

Performs acheckpoint
alter system checkpoint
alter system dump datafile

This command can be used in order todump one ore more blocksof adatafile. The following command dumps blocks 50 through 55 of file 5. Which file 5 is can be found out withv$datafile
alter system dump datafile 5 block min 50 block max 55;
Note:trace filesare only readable by the Oracle account. If you want to change this, set the undocumented initialization parameter_trace_files_publicto true. Doing so will, however, cause abig security risk.
alter system flush buffer_cache

alter system flush buffer_cache;
This command is not available prior to10g. It flushes thebuffer cachein theSGA.
9i had an undocumented command to flush the buffer cache:
alter sessionset events = 'immediate trace name flush_cache';
alter system flush shared_pool

alter system flush shared_pool;
This command flushed theshared pool.
alter system quiesce restricted

alter system suspend|resume

alter system switch logfile

Causes aredo log switch.
alter system switch logfile;
If the database is inarchive log mode, but theARCHprocess hasn't been startedm, the command might hang, because it waits for the archiving of the 'next'online redo log.
alter system register

Forces theregistrationof database information with thelistener.
alter system register
Alter system set timed_statistics

Setting timed_statistics=true might be usefule when usingtk prof.
Alter system set sql_trace

Setting sql_trace=true is a prerequisite when usingtk prof.
Alter system set .... deferred

Alter system can be used to changeinitialization parameterson system level. However, some parameters, when changed with alter system don't affect sessions that are already opened at the time when the statement is executet; it only affects sessions started later. These parameters must be changed withalter system set <initialization parameter> DEFERRED, otherwise aORA-02096: specified initialization parameter is not modifiable with this option error is returned.
These parameters can be identified as they have a DEFERRED in theisses_modifiablecolumn ofv$parameter.
Alter system reset <parameter_name>

Resetsa parameter.
alter system reset some_param scope=both sid='*';
scope

scope=memory

Changes the parameter's value for the running instance only. As soon as the instance is stopped and started, this change will be lost.
scope=spfile

Alters aninitialization parameterin thespfile
scope=both

Alters aninitialization parameterin thespfileas well as in the running instance.
分享到:
评论

相关推荐

    如何找回Oracle中system,sys用户的密码

    这些方法包括使用 SQL*Plus 连接数据库、使用操作系统认证连接数据库、使用 sqlplus 命令行工具、使用 orapwd 命令和使用 su 命令。这些方法可以帮助您快速找回 Oracle 系统用户密码,并恢复数据库的正常使用。

    Oracle归档模式命令

    SQL&gt; alter system set db_recovery_file_dest_size=21474836480; ``` #### 五、归档模式下的日志管理 在归档模式下,数据库管理系统会自动处理日志的归档工作。例如,在上文示例中,可以看到以下信息: - **...

    oracle 字符集修改命令

    接下来是关键步骤,我们需要使用`ALTER DATABASE CHARACTER SET`命令来修改数据库的字符集。这里以修改为`ZHS16GBK`为例: ```sql SQL&gt; alter database character set ZHS16GBK; ``` 如果直接修改失败(如示例中所...

    Oracle命令

    ALTER USER system IDENTIFIED BY new_password; ``` ### 使用 Sql Developer 连接数据库 - **连接模式**:使用 Sql Developer 连接数据库时,可以选择不同的连接模式。其中 INS 模式是一种常用的连接方式。 - *...

    如何快速的杀掉Oracle的Session

    需要注意的是,使用`alter system kill session`命令,被结束的Session状态会变为killed,Oracle会在下次该用户交互时清理。然而,直接杀死进程会导致Session的`paddr`被修改,如果多个Session被杀,它们的`paddr`...

    Oracle强制释放锁的命令

    强制释放锁的命令是 alter system kill session 'sid,serial#';,其中 sid 和 serial# 是查询数据库引发的锁相关信息的结果。例如,使用以下命令查询锁相关信息: select username,object_name,machine,s.sid,s....

    oracle 常用命令大全

    oracle 常用命令大全 oracle dba 常用命令 1 运行 SQLPLUS 工具 sqlplus 2 以 OS 的默认身份连接 / as sysdba 3 显示当前用户名 show user 4 直接进入 SQLPLUS 命令提示符 sqlplus /nolog 5 在命令提示符以 OS 身份...

    Oracle数据库操作命令整理

    - 使用`startup`命令启动Oracle实例。 - **双机环境下**: - 需要先切换到root用户: `su - root`。 - 启动Oracle系统: `hareg -y oracle`。 - **关闭Oracle实例** - **单机环境下**: - 进入SQL*Plus并以内部...

    oracle 11g 命令

    Oracle 11g 是一款广泛使用的数据库管理系统,其命令行工具是进行数据库管理和维护的重要手段。以下是一些关于Oracle 11g常用命令的详细解释: 1. 监听器管理: - 启动监听器:`lsnrctl start` - 停止监听器:`...

    连接oracle数据库的cmd命令

    ### 二、连接Oracle数据库的基本命令 #### 2.1 使用`sqlplus`命令连接数据库 在CMD中,最常用的命令是`sqlplus`。这是一个强大的客户端工具,用于访问Oracle数据库。要使用`sqlplus`连接到Oracle数据库,通常需要...

    Oracle DBA常用运维命令大全

    ### Oracle DBA常用运维命令详解 #### 一、SQLPLUS工具使用 **1. 运行SQLPLUS工具** - **命令**: `sqlplus` - **描述**: SQL*Plus 是 Oracle 提供的一个强大的命令行工具,用于执行 SQL 命令、脚本文件等。 - **...

    ORACLE常用维护命令

    通过`V$SESSION`视图找到要结束的会话的`SID`和`Serial#`,然后使用`ALTER SYSTEM KILL SESSION 'SID,Serial#'`命令来终止会话。如果会话被标记为“kill”,但仍然锁定资源,可能需要在操作系统级别进一步处理。 4...

    ORACLE SYSTEM表空间已满解决方案.docx

    ALTER DATABASE DATAFILE '/u01/app/oracle/oradata/yourdb/system01.dbf' RESIZE 10G; ``` 2. **优化数据存储**:对表进行重新组织,删除不必要的数据或归档历史数据。 3. **调整数据库设计**:例如,将大表...

    Oracle常用Dos命令

    本文将详细介绍几个常用的Oracle DOS命令及其应用。 1. **进入SQL*Plus**:在Windows环境下,可以通过“开始”菜单的“运行”选项输入`cmd`打开命令行,然后输入`sqlplus`,按回车键。接着,系统会提示输入用户名和...

    orcle使用中经常遇到的问题及解决办法

    可以使用`v$session`视图查看活跃会话,`v$process`查看进程状态,使用`ALTER SYSTEM KILL SESSION`终止特定会话。优化SQL性能则涉及索引、表设计和查询语句的改进。 修改Oracle端口主要是指改变Oracle监听器使用的...

    ORACLE常用命令总结

    - **命令**: `ALTER SYSTEM SWITCH LOGFILE;` - **描述**: 此命令用于手动触发日志组的切换。当当前正在使用的日志组写满时,Oracle会自动将其切换到下一个可用的日志组。但是,在某些情况下,可能需要立即进行...

    最全的oracle常用命令大全.txt

    ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle&gt;svrmgrl SVRMGR&gt;connect internal SVRMGR&gt;startup ...

    oracle日志文件相关命令

    ALTER SYSTEM SWITCH LOGFILE; 该命令将强制数据库切换到下一个日志文件组,使得数据库可以继续运行而不受日志文件的限制。 4. 查询历史日志: 使用以下命令可以查询历史日志: SELECT * FROM v$log_history; ...

    Oracle数据库system用户忘记了密码怎么办?.

    4. **重置sys和system用户密码**:分别使用`alert user sys identified by sys`和`alert user system identified by system`命令重置密码至Oracle的初始密码。 #### 方法四:创建或修改用户权限 1. **以sysdba身份...

Global site tag (gtag.js) - Google Analytics