oracle nid修改dbname

Posted ritchy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle nid修改dbname相关的知识,希望对你有一定的参考价值。

修改name的目的只是为了日后管理清晰点,不重复。我比较懒、记性又差,所以就整理记下
1、检查当前name
SQL> show parameter name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string
db_name string test141
db_unique_name string test141
global_names boolean FALSE
instance_name string test141
lock_name_space string
log_file_name_convert string
processor_group_name string
service_names string test141

SQL> select dbid,name from v$database;

DBID NAME
---------- ---------
4003894062 TEST141

2、检查监听
[[email protected] ~]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 04-9月 -2017 19:23:58

Copyright (c) 1991, 2011, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.5.233)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date 01-9月 -2017 23:46:38
Uptime 2 days 19 hr. 37 min. 20 sec
Trace Level off
Security ON: Password or Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/db/network/admin/listener.ora
Listener Log File /u01/app/oracle/product/11.2.0/db/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.5.233)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "test141" has 1 instance(s).
Instance "test141", status READY, has 1 handler(s) for this service...
The command completed successfully
--上面的检查其实都可以省略

--开始nid修改name
大致步骤:关闭DB、mount DB、nid dbname、修改init*.ora、修改环境变量并open DB、重建(s)pfile、修改tnsname.ora和listener.ora中对应名字并启动
关闭DB之前必须要知道sys密码,不知道的话就改下
SQL> alter user sys identified by qwer1234;
User altered.

1、关闭数据库,启动至mount模式
SQL> shut immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP MOUNT
ORACLE instance started.

Total System Global Area 2087780352 bytes
Fixed Size 2229944 bytes
Variable Size 687868232 bytes
Database Buffers 1392508928 bytes
Redo Buffers 5173248 bytes
Database mounted.

2、NI修改DB_NAME
[[email protected] admin]$ nid target=sys/qwer1234 dbname=test233

DBNEWID: Release 11.2.0.3.0 - Production on 星期一 9月 4 19:26:25 2017
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Connected to database TEST141 (DBID=4003894062)
Connected to server version 11.2.0

Control Files in database:
/u01/app/oracle/oradata/dbdata/control01.ctl
/u01/app/oracle/fast_recovery_area/dbdata/control02.ctl

Change database ID and database name TEST141 to TEST233? (Y/[N]) => Y

Proceeding with operation
Changing database ID from 4003894062 to 3120964513
Changing database name from TEST141 to TEST233
Control File /u01/app/oracle/oradata/dbdata/control01.ctl - modified
Control File /u01/app/oracle/fast_recovery_area/dbdata/control02.ctl - modified
Datafile /u01/app/oracle/oradata/dbdata/system01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/sysaux01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/undotbs01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/users01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_member.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/idx_member.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_account.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/idx_account.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_sysdb.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/idx_sysdb.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_risk.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/idx_risk.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_tppaml.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/idx_tppaml.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_test.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/DAT_MS_ORDERS.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/pftp01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_cashreserve_01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_orders.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/idx_orders.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/DAT_SSCARD.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/IDX_SSCARD.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/DAT_GDXT.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/IDX_GDXT.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/DAT_DINPAYPOS.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/IDX_DINPAYPOS.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/DAT_ERCON.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/IDX_ERCON.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/dat_bill01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/idx_bill01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/temp01.db - dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/dbdata/TEMP_PFPT.db - dbid changed, wrote new name
Control File /u01/app/oracle/oradata/dbdata/control01.ctl - dbid changed, wrote new name
Control File /u01/app/oracle/fast_recovery_area/dbdata/control02.ctl - dbid changed, wrote new name
Instance shut down

Database name changed to TEST233.
Modify parameter file and generate a new password file before restarting.
Database ID for database TEST233 changed to 3120964513.
All previous backups and archived redo logs for this database are unusable.
Database is not aware of previous backups and archived logs in Recovery Area.
Database has been shutdown, open database with RESETLOGS option.
Succesfully changed database name and ID.
DBNEWID - Completed succesfully.

3、修改参数文件
cd $ORACLE_HOME/dbs/init***.ora

vi /u01/app/oracle/product/11.2.0/db/dbs/inittest141.ora
#*.db_name=‘test141‘ 注释了
*.db_name=‘test233‘ 新增为想要修改的名字

vi .bash_profile

#export ORACLE_HOSTNAME=test141
export ORACLE_HOSTNAME=test233
#export ORACLE_SID=test141
export ORACLE_SID=test233

#export ORACLE_UNQNAME=test141
export ORACLE_UNQNAME=test233

4、重新生效环境变量,并启动数据库
[[email protected] ~]$ source .bash_profile
[[email protected] ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on 星期一 9月 4 19:33:40 2017

Copyright (c) 1982, 2011, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup pfile =‘/u01/app/oracle/product/11.2.0/db/dbs/inittest141.ora‘;
ORACLE instance started.

Total System Global Area 2087780352 bytes
Fixed Size 2229944 bytes
Variable Size 486541640 bytes
Database Buffers 1593835520 bytes
Redo Buffers 5173248 bytes
Database mounted.
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项

SQL> alter database open resetlogs;

Database altered.

5、重新生成pfile文件
SQL> create spfile from pfile=‘/u01/app/oracle/product/11.2.0/db/dbs/inittest141.ora‘;

File created.

Elapsed: 00:00:00.06
SQL> create pfile from spfile;

File created.

6、修改监听配置
cd $ORACLE_HOME/network/admin
vi tnsname.ora

test233 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.233)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
#(SERVICE_NAME = test141)
(SERVICE_NAME = test233)
)
)

vi listener.ora
有SERVICE_NAME的话也修改为test233

重新加载或启动
[[email protected] admin]$ lsnrctl reload/start





































































































































以上是关于oracle nid修改dbname的主要内容,如果未能解决你的问题,请参考以下文章

8. DBNEWID 工具(使用nid命令修改db name及dbid)

Oracle恢复管理之重要参数DBID

NID-00135: 存在 1 个活动的线程

NIDS与HIPS有啥区别

CDMA sid, nid, bid 含义解释

Linux命令行使用