如何修改Oracle数据库实例名(db_unique_name) (修改数据库db_unique_name)

Oracle数据库是一个非常强大和可靠的关系型数据库管理系统。Oracle数据库为系统管理员和数据库开发人员提供了各种功能和工具,以管理和维护数据库。然而,在某些情况下,您可能需要修改Oracle数据库实例名(db_unique_name)。本文将介绍如何修改Oracle数据库实例名。

什么是Oracle数据库实例名(db_unique_name)?

在Oracle数据库中,每个实例都有一个唯一的名称,称为实例名(instance name),该名称用于区分多个实例。Oracle数据库实例名(db_unique_name)是Oracle集群中所有节点的唯一标识符。

Oracle数据库实例名(db_unique_name)由两部分组成:

– :系统标识符(system identifier),代表Oracle数据库实例在计算机上的唯一标识符。

– :“域名”(domn),用于标识Oracle数据库集群中所有节点的命名空间。

例如,如果Oracle数据库实例名(db_unique_name)为“orclpoc1.example.com”,则其中“orclpoc1”是系统标识符(SID),而“.example.com”是域名(domn)。

为什么需要修改Oracle数据库实例名(db_unique_name)?

有几种情况下,您可能需要修改Oracle数据库实例名(db_unique_name):

– 您将Oracle数据库从一个环境迁移到另一个环境,例如从测试环境到生产环境。

– 您可能已更改组织的域名,并且需要在数据库中反映这种更改。

– 您可能需要重新配置您的Oracle数据库群集环境。

– 您可能需要将一些数据库从一个实例移动到另一个实例。

在这些情况下,您需要修改Oracle数据库实例名(db_unique_name)。

以下是在Oracle数据库服务器上修改Oracle数据库实例名(db_unique_name)的步骤:

1. 在更改Oracle数据库实例名(db_unique_name)之前,请确保在所有备份和恢复脚本中使用正确的实例名。这是非常重要的,因为备份和恢复脚本中的实例名与Oracle数据库实例名(db_unique_name)相关联。

2. 在所有节点上启动集群管理器(Oracle Grid Infrastructure)管理控制台。然后,通过单击相应的群集节点进入“集群目标”页面。

3. 选择要更改实例名的数据库实例。在“集群目标”页面上,单击要更改实例名的Oracle数据库实例的名称。然后单击“必需属性”选项卡。

4. 在“必需属性”选项卡中,“实例名”(Instance Name)字段显示Oracle数据库实例名(db_unique_name)。在此字段中输入您要用作实例名的新名称。

5. 保存更改并重启实例。在“集群目标”页面上,单击“执行更改”以保存更改。然后重启数据库实例以使更改生效。

6. 检查Oracle数据库实例名(db_unique_name)是否已更改。在Oracle数据库服务器上,登录SQL*Plus命令行界面,并键入以下命令:

SQL> SELECT NAME FROM V$DATABASE;

此命令将返回数据库名称,该名称应为新实例名。

这就是的步骤。请记住,在更改Oracle数据库实例名(db_unique_name)之前,请确保在所有备份和恢复脚本中使用正确的实例名。此外,您还应该备份数据库,并在更改实例名之前测试备份以确保它们可用。

相关问题拓展阅读:

  • 有两个oracle 用taf怎么配置优先启动
  • ORACLE-DataGuard系列:逻辑standby搭建

有两个oracle 用taf怎么配置优先启动

纳薯Oracle DG之–客户端TAF 配置

  系统环境:

  操作系统:RedHat EL5

  Oracle: Oracle 11gR2

  wKioL1NXhaGysLtaAAIEl99FSRw112.jpg

  系统架构图

  如图所示:

  主数据库(生产库): BJDB

  备库 (容灾库): SHDB

  DG的架构模式哗茄歼为Physical DG,数据保护模式为:Max Protection。

  1、系统架构

  主库:

  04:44:13 SYS@ TestDB12>show parameter nameNAME TYPEVALUEdb_name stringTestDB12db_unique_namestring bjdbinstance_namestringTestDB12service_namesstringbjdb04:46:22 SYS@ TestDB12>select name,dbid,database_role,protection_mode from v$database;NAME DBID DATABASE_ROLE PROTECTION_MODETESTDBPRIMARYMAXIMUM PERFORMANCE主库归档配置:

  log_archive_dest_ string LOCATION=/dsk4/arch_bjVALID_FOR=(ALL_LOGFILES,ALL_

  ROLES)

  DB_UNIQUE_NAME=bjdb

 乱冲 log_archive_dest_ string SERVICE=shdb ASYNCVALID_FOR=(ONLINE_LOGFILES,P

  RIMARY_ROLE)

  DB_UNIQUE_NAME=shdb

  备库:

  04:44:02 SYS@ shdb>show parameter name

  NAME TYPEVALUEdb_name string TestDB12db_unique_namestringshdbinstance_namestringshdbservice_namesstringshdb05:20:19 SYS@ shdb>select name,dbid,database_role,protection_mode from v$database;NAMEDBID DATABASE_ROLE PROTECTION_MODE–TESTDB PHYSICAL STANDBY MAXIMUM PERFORMANCE备库归档日志:

  log_archive_dest_ string LOCATION=/dsk4/arch_shVALID_FOR=(ALL_LOGFILES,ALL_

  ROLES)

  DB_UNIQUE_NAME=shdb

  log_archive_dest_ string SERVICE=bjdb ASYNCVALID_FOR=(ONLINE_LOGFILES,P

  RIMARY_ROLE)

  DB_UNIQUE_NAME=bjdb

  主备库网络配置:

  BJDB =

  (DESCRIPTION =

  (ADDRESS_LIST =

  (ADDRESS = (PROTOCOL = TCP)(HOST = bjsrv)(PORT = 1521)))

  (CONNECT_DATA = (SERVER = DEDICATED)

  (SERVICE_NAME = bjdb)

  )

  )

  SHDB =

  (DESCRIPTION =

  (ADDRESS_LIST =

  (ADDRESS = (PROTOCOL = TCP)(HOST = shsrv)(PORT = 1521)))

  (CONNECT_DATA = (SERVER = DEDICATED)

  (SERVICE_NAME = shdb)

  )

  )

  2、客户端TAF 配置

  1)首先在主库上配置一个TAF的service

  此服务在数据库出现故障时会发送通知给客户端,允许查询语句在故障转移发生后继续运行。

  04:08:02 SYS@ TestDB12>begin

  04:11:DBMS_SERVICE.CREATE_SERVICE04:11:(service_name=> ‘dg_sw’,

  04:11:network_name => ‘dg_sw’,

  04:11:aq_ha_notifications =>TRUE,04:11:failover_method => ‘BASIC’,04:11:failover_type =>’SELECT’,

  04:11:failover_retries => 30,

  04:11:failover_delay => 5);

  04:11:end;

  04:11:/

  PL/SQL procedure successfully completed.

  Elapsed: 00:00:00.15

  2)建立一个存储过程,用于调用service,确保只在主库运行我们创建一个存储过程来实现此目的,如果当前数据库是主库它就启动此服务,如果是备库就停止。

  04:15:42 SYS@ TestDB12>create or replace procedure dg_taf_proc04:15:is v_role

  04:15:VARCHAR(30);

  if v_role = ‘PRIMARY’

  begin

  select DATABASE_ROLE into v_role from V$DATABASE;04:15:if v_role = ‘PRIMARY’

  04:15:then

  04:15:DBMS_SERVICE.START_SERVICE(‘dg_sw’);04:15:else

  04:15:DBMS_SERVICE.STOP_SERVICE(‘dg_sw’);04:15:end if;

  04:15:end;

  04:15:/

  Procedure created.

  3)创建2个触发器来确保服务可以运行

  创建两个触发器,让数据库在启动和角色转换时运行此存储过程。

  04:15:44 SYS@ TestDB12>

  create or replace TRIGGER

  04:17:dg_taf_trg_startup

  after startup on database

  04:17:begin

  04:17:dg_taf_proc;

  04:17:end;

  04:17:/

  Trigger created.

  Elapsed: 00:00:00.08

  用于当数据库open时,如果是主库则执行存储过程。

  04:17:03 SYS@ TestDB12>

  04:18:19 SYS@ TestDB12>create or replace TRIGGER04:18:dg_taf_trg_rolechange

  04:18:after db_role_change on database04:18:begin

  04:18:dg_taf_proc;

  04:18:end;

  04:18:/

  Trigger created.

  当数据库切换后,如果是主库则执行存储过程。

  4)客户端tnsnames 配置

  DG_SW =

  (DESCRIPTION =

  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.120)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.130)(PORT = 1521))(LOAD_BALANCE = yes)

  (CONNECT_DATA =

  (SERVER = DEDICATED)

  (SERVICE_NAME = dg_sw)

  (FAILOVER_MODE =

  (TYPE = session)

  (METHOD = basic)

  (RETRIES = 180)

  (DELAY = 5)

  )

  )

  )

  注:8.120 是主库,8.130 是备库

  3、验证客户端的TAF

  1)首先在主库上执行该存储过程

  04:19:09 SYS@ TestDB12>execute dg_taf_proc;PL/SQL procedure successfully completed.

  Elapsed: 00:00:00.06

  04:22:55 SYS@ TestDB12>show parameter nameNAME TYPEVALUEdb_name string TestDB12db_unique_namestring bjdbinstance_namestring TestDB12service_namesstring dg_sw注:service_name 变为dg_sw

  04:23:01 SYS@ TestDB12> alter system switch logfile;在主库做日志的切换,将变化应用到备库

  2)在备库查询

  04:27:30 SYS@ shdb>select trigger_name,trigger_name from dba_triggers04:28:where trigger_name like ‘%DG%’;TRIGGER_NAME TRIGGER_NAME—–DG_TAF_TRG_STARTUPDG_TAF_TRG_STARTUPDG_TAF_TRG_ROLECHANGEDG_TAF_TRG_ROLECHANGE3)客户端连接测试

  C:\Documents and Settings\tiany>sqlplus sys/oracle@dg_sw as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on 星期三 4月 23 16:35:Copyright (c) 1982, 2023, Oracle. All rights reserved.

  连接到:

  Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit ProductionWith the Partitioning, Oracle Label Security, OLAP, Data Mining,Oracle Database Vault and Real Application Testing optionsSQL>

  此时应连接到主库!

  4、主备库切换后的TAF测试

  1)主备库切换

  主库切换后:

  04:41:31 SYS@ TestDB12>select database_role ,switchover_status from v$database;DATABASE_ROLE SWITCHOVER_STATUS

  PHYSICAL STANDBY RECOVERY NEEDED

  备库切换后:

  04:31:17 SYS@ shdb>select database_role ,switchover_status from v$database;DATABASE_ROLE SWITCHOVER_STATUS

  PRIMARYNOT ALLOWED

  Elapsed: 00:00:00.02

  2)客户端连接测试

  C:\Documents and Settings\tiany>sqlplus sys/oracle@dg_sw as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on 星期三 4月 23 16:43:Copyright (c) 1982, 2023, Oracle. All rights reserved.

  连接到:

  Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit ProductionWith the Partitioning, Oracle Label Security, OLAP, Data Mining,Oracle Database Vault and Real Application Testing optionsSQL> show parameter name

  NAME TYPEVALUEdb_name string TestDB12db_unique_namestring shdbinstance_namestring shdbservice_namesstring dg_sw切换后,在备库上存储过程启动了TAF的service ,客户端再连接时,自动连接到了当前的主库(原备库)。

  @至此,在DG环境下客户端的TAF配置基本完成。

ORACLE-DataGuard系列:逻辑standby搭建

准备:

确认对象和语句能被standby支持

确保primary库中各表的行可被唯一标识

环境:

操作系统:RED HAT LINUX ENTERPRISE 5

ORACLE: 11.2.0.1.0

PRIMARY:

IP: 192.168.1.11

SID: test

DB_UNIQUE_NAME:test

安装路径:/oracle/oracle/product/11.2.0/dbhome_1

本地归档路径:/oracle/oradata/test/archive

PHYSICS STANDBY:

IP: 192.168.1.12

SID: dgtest

DB_UNIQUE_NAME:dgtest

安装路径:/oracle/oracle/product/11.2.0/dbhome_1

本码粗没地归档路径:/oracle/oradata/dgtest/dgtest/archive

LOGICAL STANDBY:

IP: 192.168.1.15

SID: logicdg

DB_UNIQUE_NAME: logicdg

安装路径:/oracle/oracle/product/11.2.0/dbhome_1

本地归档路径:/oracle/oradata/logicdg/local-archive

本例测迟纳试采用物理standby转逻辑standby的方式在一个已经存在的dataguard环境中新增一台逻辑standby.

原dataguard环境可参考:

创建新物理standby的过程亦可参照此文。此处不再赘述。

则目前环境为:

primary:192.168.1.11

physics: 192.168.1.12

logical: 192.168.1.15 (凳衡目前为物理standby.待转换)

1.修改primary初始化参数文件(仅列出修改部分)

*.log_archive_dest_state_2=defer

*.log_archive_dest_state_3=defer

*.log_archive_config=’dg_config=(test,dgtest,logicdg)’

*.log_archive_dest_2=’service=test12 arch valid_for=(online_logfiles,primary_role) db_unique_name=dgtest’

*.log_archive_dest_3=’service=test15 arch valid_for=(online_logfiles,primary_role) db_unique_name=logicdg’

*.fal_server=test11

*.fal_client=test12

*.standby_file_management=auto

*.db_file_name_convert=’/oracle/oradata/test’,’/oracle/oradata/dgtest/dgtest’,’/oracle/oradata/test’,’/

oracle/oradata/logicdg’

*.log_file_name_convert=’/oracle/oradata/test’,’/oracle/oradata/dgtest/dgtest’,’/oracle/oradata/test’,’/

oracle/oradata/logicdg’

2.查看两台物理standby同步状态

physics select sequence#,applied from v$archived_log;

SEQUENCE# APPLIED

——

66 YES

67 YES

68 YES

69 YES

70 YES

71 YES

72 YES

7 rows selected.

logical select sequence#,applied from v$archived_log;

SEQUENCE# APPLIED

——

67 YES

68 YES

69 YES

70 YES

71 YES

72 YES

6 rows selected.

3.取消待转换物理standby的redo应用

logical alter database recover managed standby database cancel;

Database altered.

4.primary生成数据字典

primary execute dbms_logstdby.build;

PL/SQL procedure successfully completed.

5.将物理standby转换为逻辑standby

logical alter database recover to logical standby logicdg;

Database altered.

logical shutdown immediate

ORA-01507: database not mounted

ORACLE instance shut down.

logical startup mount

ORACLE instance started.

Total System Global Areabytes

Fixed Sizebytes

Variable Sizebytes

Database Bufferytes

Redo Bufferytes

Database mounted.

6.调整standby初始化参数

logical alter system set log_archive_dest_1=’location=/oracle/oradata/logicdg/local-archive valid_for=(online_logfiles,all_roles)

2 db_unique_name=logicdg’;

System altered.

logical alter system set log_archive_dest_5=’location=/oracle/oradata/logicdg/archive valid_for=(standby_logfiles,standby_role)

2 db_unique_name=logicdg’;

System altered.

7.resetlogs方式打开数据库

logical alter database open resetlogs;

Database altered.

8.应用redo

创建standby redologs

logical alter database add standby logfile group 11 ‘/oracle/oradata/logicdg/standbyredo11.log’ size 100m;

Database altered.

logical alter database add standby logfile group 12 ‘/oracle/oradata/logicdg/standbyredo12.log’ size 100m;

Database altered.

logical alter database add standby logfile group 13 ‘/oracle/oradata/logicdg/standbyredo13.log’ size 100m;

Database altered.

启动redo实时应用

logical alter database start logical standby apply immediate;

Database altered.

修改数据库db_unique_name的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于修改数据库db_unique_name,如何修改Oracle数据库实例名(db_unique_name),有两个oracle 用taf怎么配置优先启动,ORACLE-DataGuard系列:逻辑standby搭建的信息别忘了在本站进行查找喔。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/241108.html<

(0)
管理的头像管理
上一篇2025-04-24 04:39
下一篇 2025-04-24 04:41

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注