一、更改ORACLE SID名称
1、切换到ORACLE用户,登陆到ORACLE数据库:
[root@ora10g ~]# su - oracle
[oracle@ora10g ~]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Tue Dec 6 23:52:04 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options2、查看当前的实例名
SQL> col host_name format a20
SQL> select host_name,instance_name,status from v$instance;HOST_NAME INSTANCE_NAME STATUS
-------------------- ---------------- ------------
ora10g.localdomain wwl OPEN3、创建参数文件
SQL> create pfile from spfile;File created.
4、关闭实例
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options5、停止监听
[oracle@ora10g ~]$ lsnrctl stopLSNRCTL for Linux: Version 10.2.0.1.0 - Production on 06-DEC-2011 23:54:53
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora10g.localdomain)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused6、检查是否有数据库相关的进程,这里查看到ORACLE的进程都没有启动
[oracle@ora10g ~]$ ps -ef|grep ora
root 1907 1885 0 23:49 ? 00:00:00 hald-addon-storage: polling /dev/hdc
avahi 2086 1 0 23:49 ? 00:00:00 avahi-daemon: running [ora10g.local]
root 2455 2259 0 23:51 pts/1 00:00:00 su - oracle
oracle 2456 2455 0 23:51 pts/1 00:00:00 -bash
oracle 2501 2456 0 23:55 pts/1 00:00:00 ps -ef
oracle 2502 2456 0 23:55 pts/1 00:00:00 grep ora
[oracle@ora10g ~]$ ps -ef|grep list
68 1893 1885 0 23:49 ? 00:00:00 hald-addon-acpi: listening on acpid socket /var/run/acpid.socket
68 1897 1885 0 23:49 ? 00:00:00 hald-addon-keyboard: listening on /dev/input/event0
root 2297 2292 0 23:49 tty7 00:00:00 /usr/bin/Xorg :0 -br -audit 0 -auth /var/gdm/:0.Xauth -nolisten tcp vt7
oracle 2504 2456 0 23:55 pts/1 00:00:00 grep list
[oracle@ora10g ~]$ ps -ef|grep tns
oracle 2506 2456 0 23:55 pts/1 00:00:00 grep tns7、修改刚才创建的pfile参数文件,主要添加和修改instance_name和service_names的值为新值:
[oracle@ora10g ~]$ cd $ORACLE_HOME/dbs[oracle@ora10g dbs]$ ls -rtl
总计 68
-rw-r----- 1 oracle oinstall 8385 1998-09-11 init.ora
-rw-r----- 1 oracle oinstall 12920 2001-05-03 initdw.ora
-rw-rw---- 1 oracle oinstall 1544 11-17 15:39 hc_wwl.dat
-rw-r----- 1 oracle oinstall 1536 11-17 15:41 orapwwwl
-rw-r----- 1 oracle oinstall 2048 11-19 02:47 orawwl02
-rw-rw---- 1 oracle oinstall 24 11-19 03:12 lkWWL
-rw-rw---- 1 oracle oinstall 1544 11-19 03:17 hc_wwl02.dat
-rw-r----- 1 oracle oinstall 667 11-19 03:18 initwwl02.ora
-rw-rw---- 1 oracle oinstall 24 11-19 03:19 lkWWL02
-rw-r----- 1 oracle oinstall 2560 11-19 04:22 spfilewwl02.ora
-rw-r----- 1 oracle oinstall 3584 12-06 23:51 spfilewwl.ora
-rw-r--r-- 1 oracle oinstall 1038 12-06 23:54 initwwl.ora[oracle@ora10g dbs]$ vi initwwl.ora
*.__db_cache_size=218103808
*.__java_pool_size=4194304
*.__large_pool_size=4194304
*.__shared_pool_size=54525952
*.__streams_pool_size=0
*.audit_file_dest='/orasoft//admin/wwl/adump'
*.background_dump_dest='/orasoft//admin/wwl/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/oradata/wwl/control01.ctl','/oradata/wwl/control02.ctl','/oradata/wwl/control03.ctl'
*.core_dump_dest='/orasoft//admin/wwl/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_recovery_file_dest='/oradata/flash_back'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=wwlXDB)'
*.job_queue_processes=10
*.log_archive_dest_1='LOCATION=/oradata/archive'
*.log_archive_format='%t_%s_%r.dbf'
*.nls_language='SIMPLIFIED CHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.pga_aggregate_target=94371840
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=285212672
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS2'
*.user_dump_dest='/orasoft//admin/wwl/udump'--添加如下内容
*.db_name='wwl'
*.instance_name = wwl01
*.service_names = wwl01~
~
8、检查刚才添加的参数文件,是否已添加进来。
[oracle@ora10g dbs]$ cat initwwl.ora
*.__db_cache_size=218103808
*.__java_pool_size=4194304
*.__large_pool_size=4194304
*.__shared_pool_size=54525952
*.__streams_pool_size=0
*.audit_file_dest='/orasoft//admin/wwl/adump'
*.background_dump_dest='/orasoft//admin/wwl/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/oradata/wwl/control01.ctl','/oradata/wwl/control02.ctl','/oradata/wwl/control03.ctl'
*.core_dump_dest='/orasoft//admin/wwl/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='wwl'
*.db_recovery_file_dest='/oradata/flash_back'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=wwlXDB)'
*.job_queue_processes=10
*.log_archive_dest_1='LOCATION=/oradata/archive'
*.log_archive_format='%t_%s_%r.dbf'
*.nls_language='SIMPLIFIED CHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.pga_aggregate_target=94371840
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=285212672
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS2'
*.user_dump_dest='/orasoft//admin/wwl/udump'
*.instance_name = wwl01
*.service_names = wwl01
~
9、并且创建新的密码文件
[oracle@ora10g dbs]$ orapwd file=orapwwwl01.ora password=oracle;
[oracle@ora10g dbs]$ cd /orasoft/product/10.2.0/db_1/network/admin/
[oracle@ora10g admin]$ ls
listener11113011AM1905.bak listener.ora samples shrept.lst tnsnames11113011AM1905.bak tnsnames.ora10、检查监听文件,如果有SID_NAME这个参数,将其修改为新的SID即可,我这里没有,就不修改了
[oracle@ora10g admin]$ vi listener.ora
# listener.ora Network Configuration File: /orasoft//product/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.SID_LIST_LISTENER =
(SID_LIST =
(PROGRAM = extproc)
)
)LISTENER =
(DESCRIPTION_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)"tnsnames.ora" 24L, 527C 已写入
10、使用刚才修改后的spfile参数启动数据库:
[oracle@ora10g dbs]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Wed Dec 7 00:04:50 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup pfile='/orasoft/product/10.2.0/db_1/dbs/initwwl.ora';
ORACLE instance started.Total System Global Area 285212672 bytes
Fixed Size 1218992 bytes
Variable Size 62916176 bytes
Database Buffers 218103808 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.11、将刚才创建的pfile参数创建为spfile,以后启动默认使用该spfile参数启动数据库
SQL> create spfile from pfile;File created.
12、检查修改后的SID的名称,我们看到确实是已经修改过来了,但是实例名和DATABASE名称是不会修改的
SQL> show parameter instance_nameNAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string wwl01
SQL> show parameter service_namesNAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names string wwl01 SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
wwlSQL> select name from v$database;
NAME
---------
WWL