修改数据库名(dbname),和网上流行的版本不一样,这个是oracle 11g2版数据库改名,不是10g的。
前面讲过修改sid名字,虽然已经修改过了实例名(sid),但是数据库的名称(dbname还是原来的名称orcl)
下面详细描述,更改数据库名字的。详细过程如下:
1、更改存档日志,默认安装完的oracle 测试环境是非存档模式。
要改成存档的,这个目的是为以后保存生成控制文件做准备。
sqlplus "/as sysdba"
shutdown immediate
startup mount
alter database archivelog
alter database open
2、切换在线日志——使数据库做checkpoint(第一步的四个步骤,就是为了保证这一步执行成功)
SQL> alter system archive log current;
System altered.
3、生成重建控制文件的脚本**********************resetlogs;指导老师点评:在正式的生产环境中resetlogs不能用,
SQL> alter database backup controlfile to trace resetlogs;
Database altered.
4、关闭数据库,需要干净关闭,不能shutdown abort
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
5、进入$ORACLE_BASE/diag/rdbms/<sid>/<sid>trace目录中,找到最新生成的trc文件,这就是重建控制文件的脚本,这里要特别注意。
这个地方和10g不一样,11g取消了admin/<sid>udump目录,用diag的某个目录取代,
ls -lrt
total 2608
-rw-r----- 1 oracle oinstall 577 Nov 7 13:37 orcl_ora_12020.trc
......
-rw-r----- 1 oracle oinstall 4407 Dec 20 11:36 nihao_ora_7789.trc
6、用存当跟踪去生成:
[oracle@localhost trace]$ cp nihao_ora_5835.trc nihao.sql
[oracle@localhost trace]$ vim nihao.sql
7、编辑nihao.sql,结果类似如下的行,保留下面的行,并且 指导老师点评:下面ARCHIVELOG 和当前实例的archivelog状态有关
STARTUP NOMOUNT
CREATE CONTROLFILE SET DATABASE "NIHAO" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 '/u01/app/oracle/oradata/nihao/redo01.log' SIZE 50M BLOCKSIZE 512,
GROUP 2 '/u01/app/oracle/oradata/nihao/redo02.log' SIZE 50M BLOCKSIZE 512,
GROUP 3 '/u01/app/oracle/oradata/nihao/redo03.log' SIZE 50M BLOCKSIZE 512
DATAFILE
'/u01/app/oracle/oradata/nihao/system01.dbf',
'/u01/app/oracle/oradata/nihao/sysaux01.dbf',
'/u01/app/oracle/oradata/nihao/undotbs01.dbf',
'/u01/app/oracle/oradata/nihao/users01.dbf',
'/u01/app/oracle/oradata/nihao/example01.dbf'
CHARACTER SET ZHS16GBK
;
--RECOVER DATABASE USING BACKUP CONTROLFILE
ALTER DATABASE OPEN RESETLOGS;
ALTER TABLESPACE TEMP ADD TEMPFILE '/u01/app/oracle/oradata/nihao/temp01.dbf'
SIZE 30408704 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;
这是改好的nihao.sql,看看文件的目录,以后要把相应的目录改过来,要不这段SQL不执行。
8、目录更改:
8.1
存档日志目录:
[oracle@localhost flash_recovery_area]$ mv ORCL/ NIHAO/
9、用spfile创造新的pfile
[oracle@localhost ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Fri Sep 30 11:30:26 2011
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
SQL> create pfile='?/dbs/initnihao.ora' from spfile;
File created.
SQL> exit
Disconnected
10、进入$ORACLE_HOME/dbs目录
11、编辑initnihao.ora文件
搜索所有的orcl,重命令为nihao,搜索所有的ORCL,重命名为NIHAO;
12、删除控制文件
将原来的控制文件删除或重命名
控制文件的位置名称可以通过查看11步骤中的*.control_files来确定
13、
13.1
进入$ORACLE_BASE/admin目录
将orcl目录重命名为nihao
[oracle@localhost flash_recovery_area]$ mv orcl/ nihao/
13.2修改数据文件存放目录:
[oracle@localhost oradata]$ mv orcl/ nihao/
[oracle@localhost oradata]$ ls
nihao
13.3把dbrms下面的目录orcl的改成nihao,如下面所示:
@/u01/app/oracle/diag/rdbms/nihao/nihao/trace/nihao.sql
14、调用前面步骤修改好的nihao.sql
SQL> @/u01/app/oracle/diag/rdbms/nihao/nihao/trace/nihao.sql
ORA-01081: cannot start already-running ORACLE - shut it down first
Control file created.
Database altered.
Tablespace altered.
SQL> startup
ORA-01081: cannot start already-running ORACLE - shut it down first
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 539848704 bytes
Fixed Size 1337748 bytes
Variable Size 327157356 bytes
Database Buffers 205520896 bytes
Redo Buffers 5832704 bytes
Database mounted.
Database opened.
SQL> show parameter name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string
db_name string nihao
db_unique_name string nihao
global_names boolean FALSE
instance_name string nihao
lock_name_space string
log_file_name_convert string
service_names string nihao.localdomain
SQL>
第二句告诉你,正在运行,但是控制文件,数据文件,表空间都做好了。意味着数据库改名成功。
下面验证:
第8行关闭数据库,
第12行启动数据库,
第21行查看数据库,结果,全部改动成功,谢谢大家。
15、最后再次验证:
SQL> select name from v$database;
NAME
---------
NIHAO
SQL>
后记,在网上没有找到oracle 11g2 改数据库名的例子和方法,自己摸索的,目录改了对于新手来说真的很麻烦,连照猫画虎都不能了。
费了两周。
分享到:
相关推荐
数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID) 在ORACLE7、 8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。在ORACLE8i、9i中出现了新的参数,即数据库域名 (db_...
1.6 create database dbname的含义 1 1.7安装DBMS 1 1.8宏观上是数据-->database 1 1.9远程登录:telnet IP地址 1 1.10 TCP/IP通信协议 2 1.11数据库建连接必须提供以下信息 2 1.12一台机器可跑几个数据库,主要受...
系统级的环境变量一般在/etc/profile 文件中定义 在 CAMS 系统 与数据库 相关的环境变量就定义在/etc/profile 文件中 如下所示 export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/...
linux系统给 系统给oracle数据库增加新的实例 数据库增加新的实例 eg: 新建实例名orcl 1、新增实例的⽬录 su - oracle cd $ORACLE_BASE/admin mkdir orcl cd orcl mkdir dbdump mkdir adump mkdir pfile cd $ORACLE_...
ORACLE 11G 安装后只能localhost 访问本机,不能用IP地址被访问。在监听文件 listener.ora 中加入如下: (SID_DESC = (GLOBAL_DBNAME = orcl01) (ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1) ...
在单机环境下,要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle Oracle数据库有以下几种启动方式: 1、 startup nomount 非安装启动,这种方式启动下可执行:重建控制文件、重建数据库 ...
本章主要讲解oracle客户端连接oracle效劳器,主要有以下内容: 1.配置本地net效劳名配置 2.用sqlplus连接; 3.用toad连接; 一、配置本地net效劳名 首先说明我们的效劳器的IP为60.220.246.53,oracle的SID为czdb。 ...
linux系统给 系统给oracle数据库增加新的实例 数据库增加新的实例 eg: 新建实例名orcl 1、新增实例的⽬录 su - oracle cd $ORACLE_BASE/admin mkdir orcl cd orcl mkdir dbdump mkdir adump mkdir pfile cd $ORACLE_...
一、Oracle数据库几种启动方式 1、startup nomount 非安装启动,这种方式下启动可执行:重建控制文件、重建数据库,读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。 2...
exp和imp和用法。 $ exp user/pwd@dbname file=/oracle/test.dmp full=y
介绍了使用DBNEWID Utility更改Oracle 数据库dbid和dbname的方法
依此类推,就可以轻松知道数据字典的详细名称和解释,不用查看ORACLE的其它文档资料了。 下面按类别列出一些ORACLE用户常用数据字典的查询使用方法。 1、用户 查看当前用户的缺省表空间 SQL>select username...
Part 11 Miscellaneous Oracle Database Topics _____________ 582 Part 12 PL/SQL Samples ______________________________ 596 Part 13 Appendixes__________________________________ 674 38页的部份文档 ...
详解 linux mysqldump 导出数据库、数据、表结构 导出完整的数据库备份: mysqldump -h127.0.0.1 -P3306 -uroot -ppassword --add-locks -q dbname > dbname.sql 说明:–add-locks:导出过程中锁定表,完成后回解锁...
Oracle的URL 规则 驱动:oracle.jdbc.driver.OracleDriver URL:jdbc:oracle:thin:@machine_name:port:dbname 注1:machine_name:数据库所在的机器的名称; 注2:port:端口号,默认是1521 示例 Class.forName...
//dbname就是要连接的数据库名 String DBUser="sa"; String DBPwd="sa"; 2、DB2数据库 Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); String url="jdbc:db2://localhost:5000/sample"; //...
事先在需要访问Oracle 数据库的主机上完成以下工作: 1. 安装SQL Server 数据库:SQL Server 2008 R2 Express 2. 安装Oracle 客户端访问程序:Oracle 10g Client 3. 配置Oracle 客户端tnsnames.ora 文件,其中...
详解数据库连接的URL的写法及总结 JDBC的URL=协议名+子协议名+数据源名。 a .协议名总是“jdbc”。 b .子协议名由JDBC驱动程序的编写者决定。 c .数据源名也可能包含用户与口令等信息;这些信息也可单独提供。 ...
最近一直在用python写点监控oracle的程序,一直没有用到异常处理这一块,然后日常监控中一些错误笼统的抛出数据库连接异常,导致后续处理的时候无法及时定位问题。 于是早上抽点时间看了下python3关于cx_oracle的...
一、导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql 二、导出一个表 mysqldump -u ...