oracle 更改数据库名的方法

以下是详细讲解“Oracle 更改数据库名的方法”的完整攻略:

1. 准备工作

在更改Oracle数据库名之前,需要确保完成以下准备工作:

  1. 关闭所有连接到该数据库的会话和乘数,并停止Oracle数据库服务。
  2. 备份原始数据库,以防意外情况发生。
  3. 确认更改数据库名的旧名称和新名称。

2. 更改数据库名称

2.1 修改pdb

首先,我们需要修改pluggable database的名称,可以通过以下步骤来实现:

  1. 使用SID或者service Name连接到数据库(例如: sqlplus / as sysdba)。
  2. 执行以下SQL脚本:
SQL> alter session set container=<old pdb name>;
SQL> alter pluggable database <old pdb name> close;

SQL> startup mount exclusive;
SQL> alter session set container=<old pdb name>;
SQL> alter pluggable database <old pdb name> rename global_name to <new pdb name>;

SQL> alter pluggable database all open;
SQL> alter session set container=<new pdb name>;
SQL> exit;

2.2 修改需要使用的service name

然后,我们需要修改需要使用的Service Name,可以通过以下步骤来实现:

  1. 使用新的pdb名来启动数据库。

  2. 执行以下SQL脚本:

SQL> alter system set service_names=<new service name> scope=both;

2.3 修改管理服务的SID

最后,我们需要修改管理服务的System Identifier(SID)。可以通过以下步骤来实现:

  1. 关闭数据库。

  2. 修改监听器配置文件中SID_LIST_LISTENER标签中的 SID_NAME 属性为新的SID名称。

  3. 重新启动监听,使用以下Linux命令启动:

$ lsnrctl start

3. 示例说明

以下是两个示例说明:

3.1 更改为小写字母名称

假设我们有一个数据库名为ORCL的Oracle数据库,我们将其更改为小写字母名称orcl。我们需要执行以下步骤:

SQL> alter session set container=cdb$root;
SQL> alter pluggable database orcl close;
SQL> startup mount exclusive;
SQL> alter session set container=cdb$root;
SQL> alter pluggable database orcl rename global_name to orcl_new;
SQL> alter pluggable database all open;
SQL> alter session set container=orcl_new;
SQL> exit;

注意,在此示例中我们同时更改了PDB名称和Global名称。

3.2 更改为带下划线的名称

假设我们有一个数据库名为orcl1的Oracle数据库,我们将其更改为带下划线的名称orcl_1。我们需要执行以下步骤:

SQL> alter session set container=cdb$root;
SQL> alter pluggable database orcl1 close;
SQL> startup mount exclusive;
SQL> alter session set container=cdb$root;
SQL> alter pluggable database orcl1 rename global_name to orcl_1;
SQL> alter pluggable database all open;
SQL> alter session set container=orcl_1;
SQL> exit;

注意,在此示例中我们只更改了Global名称,而没有更改PDB名称。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:oracle 更改数据库名的方法 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • Oracle VM VirtualBox 安装CentOS7操作系统的教程图解

    首先,安装CentOS7操作系统前需要先安装Oracle VM VirtualBox,所以我们需要先下载并安装VirtualBox(因为下载和安装过程比较简单,这里就不赘述了,可以自行在搜索引擎中搜索相关教程)。 接下来,我们进入CentOS官网下载CentOS7的ISO镜像文件。下载完成后,在VirtualBox中创建一个新的虚拟机,按照下面的步骤进行设置…

    database 2023年5月22日
    00
  • PHP数据缓存技术

    PHP数据缓存技术 在Web开发中,数据缓存技术是一个非常重要的话题。懂得使用合适的缓存策略可以极大地提升Web应用的性能和响应速度。本文将介绍PHP中常用的缓存技术及其使用方法。 常见的缓存类型 文件缓存:将数据写入硬盘,下次使用时直接读取硬盘数据。适用于缓存数量较小的场景。 Memcached缓存:将数据缓存在内存中,适用于高并发、频繁读写的场景。 Re…

    database 2023年5月19日
    00
  • 理解与使用JavaScript中的回调函数

    下面是“理解与使用JavaScript中的回调函数”的完整攻略: 什么是回调函数? 在JavaScript中,回调函数是指在另一个函数执行完毕后,通过参数传递给该函数的一个函数。这个参数函数会在调用另一个函数的过程中被执行。例如: function loadScript(url, callback) { var script = document.creat…

    database 2023年5月21日
    00
  • DML和TCL的区别

    DML和TCL是SQL中非常重要的两个术语,他们分别代表了数据操作语言和事务控制语句。下面我将详细讲解它们的区别。 DML DML指数据操作语言,顾名思义,它主要用于对数据库表中的数据进行操作,包括增加、删除、修改等操作。DML语句包括INSERT、UPDATE、DELETE等等。下面是两个实例说明DML的操作: 添加数据 添加数据是DML语言中的一种操作,…

    database 2023年3月27日
    00
  • MySQL与Oracle的语法区别详细对比

    MySQL和Oracle是两种不同的关系型数据库管理系统,它们的语法有一些区别。下面是MySQL与Oracle的语法区别详细对比的攻略: 标识符 MySQL和Oracle在标识符的规则上略有不同。MySQL允许标识符包含数字、字母、下划线,并且必须以字母或下划线开头。而在Oracle中,标识符可以包含数字、字母、下划线、美元符号,并且必须以字母开头。 示例:…

    database 2023年5月21日
    00
  • redis防止重复提交

    public interface DistributedLock { boolean getLock(String var1, String var2, int var3);//加锁 void unLock(String var1, String var2);//释放 } // // Source code recreated from a .class f…

    Redis 2023年4月13日
    00
  • nacos无法连接mysql的解决方法

    下面是关于“nacos无法连接mysql的解决方法”的完整攻略: 问题描述 在使用Nacos时,mysql 数据库可能出现连接失败的情况。此时,无法正常使用 Nacos 服务。 解决方法 在解决此问题之前,需要先明确一下可能出现的原因,有以下几点: 数据库配置信息有误 mysql数据库未运行或未成功启动 mysql数据库出现了其他问题 为了解决以上问题,我们…

    database 2023年5月22日
    00
  • MySQL创建唯一索引时报错Duplicate entry * for key问题

    MySQL创建唯一索引时报错”Duplicate entry *** for key”问题通常是因为在唯一索引列中存在同名的两条记录,导致插入数据时出现了重复键值。有以下几种方法可以解决此问题: 方法一:删除重复数据 第一步:找出重复数据 可以通过以下语句找出重复数据: SELECT col1,col2,COUNT(*) FROM table_name GR…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部