在数据库处于mount状态或数据文件对应的表空间处于offline状态下,重新rename数据文件即可。可上百度找相关命令。
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的轮台网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
这个是可以的
1. 在mount 或者open 下, alter database backup controlfile to trace;
2. 在 init.ora里把dbname 改成新名字
3. 打开在第一步生成的trace, 把里面 create controlfile 那行中 reuse 'old database name'
改成set 'new database name'
4. alter system swich logfile, shutdown database, 把现有controlfile 改名。 在svrmgrl中运行第三步的tracefile , 这样生成 新控制文件, open database, 改名完成。
首先用户要具有相应的权限。
步骤:1:使用shutdown 命令关闭数据库;2:讲日志文件复制到新位置
3:使用startup mount 转载数据库;4:使用rename file修改名字
例如:alter database
rename file 'D:/diska/redo01.log' to 'D:/diska/red001.log'
在本例中,假设原来的数据库名为test,要改成testdb,原实例名(service_name,instance_name)test,要改成testdb.nid是自带的工具,在oracle_home/bin目录中.以下方法假设登陆到数据库本机做。1.1 sqlplus "sys/password as sysdba"1.2 sqlshutdown immediate --先停掉数据库1.3 sqlstartup mount --nid需要在mount状态下才能做。1.4sqlhost nid target=sys/password dbname=new_dbname --nid是一个在操作系统下执行的命令,在sqlplus环境中用host 去调用操作系统环境下的命令。命令中,当你想将数据库名字改为TESTDB时,应写成dbname=testdb1.5执行后程序会询问:Change database ID and database name TEST to TESTDB? (Y/[N]) =y敲y确定。之后程序会对控制文件,数据文件进行修改:
请采纳。
好像改不了,不明白为什么有这样的需求。
不如在客户端直接改 TNSNAMES.ORA文件好了。
test改名,test改名.world =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(COMMUNITY = tcp.world)
(PROTOCOL = TCP)
(Host = 172.16.2.8)
(Port = 1521)
)
(ADDRESS =
(COMMUNITY = tcp.world)
(PROTOCOL = TCP)
(Host = 172.16.2.8)
(Port = 1526)
)
)
(CONNECT_DATA = (SID = test)
)
)