我已经用以下命令集重命名了pluggable数据库:
conn / as sysdba;
alter pluggable database ORCLPDB1 close;
alter pluggable database ORCLPDB1 open restricted;
alter session set container=ORCLPDB1;
alter pluggable database rename global_name to NEW_NAME;
alter pluggable database close immediate;
alter pluggable database open;
show pdbs;
并看到PDB已成功重命名:
$ lsnrctl status
...
Service "new_name" has 1 instance(s).
Instance "ORCLCDB", status READY, has 1 handler(s) for this service...
我可以用一个新的名字连接到PDB
sqlplus sys@localhost:1521/NEW_NAME as sysdba
但我看到tnsnames.ora文件在重命名后没有变化:
ORCLCDB=localhost:1521/ORCLCDB
ORCLPDB1=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCLPDB1)
)
)
所以我不明白我需要这个文件,如果我可以连接到PDB与一个新的名称没有问题,我应该改变ORCLPDB1到NEW_NAME在这个文件手动?
1条答案
按热度按时间c0vxltue1#
你在这个例子中使用的连接:
...称为Easy Connect或EZ Connect,并且不使用
tnsnames.ora
中定义的别名。因为在这种类型的连接已经使用了所有3条所需的信息-主机名(localhost
在您的情况下),端口(1521
)和服务名称(NEW_NAME
)。为了使用通过
tnsnames.ora
(称为本地连接,与EZ相对)的连接-您应该使用:用途:.其中
ORCLPDB1
是您发布的tnsnames.ora
中定义的别名。