我今天复制了一个我的虚拟机的node。操作系统redhat6.9
这个虚拟机已经装好了oracle11g 实例名就叫prod
复制好了之后发现主机名和数据库实例名 监听等等都一模一样
为了搭建个data guard 我需要修改主机名和数据实例名
1、root用户修改主机名
vi /etc/hosts或者vi /etc/hostname 不做讲解
2、修改网卡 vi /etc/udev/rules.d/70-persistent-net.rules
记住网卡的MAC地址 我这里是用到了eth1
root@database2 network-scripts]# vi /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x8086:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:4b:1d:81", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
# PCI device 0x8086:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:36:c1:69", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
将这个MAC地址写入到ifcfg-eth1中
/etc/sysconfig/network-scripts
[root@database2 network-scripts]# more ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
HWADDR=08:00:27:4B:1D:81
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.56.99
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
接下来开始操作数据库了 oracle用户
如果数据库开启 那么请先关闭他
sql>shutdown immediate
关闭监听
#lsnrctl stop
生成新的口令文件(老的文件要备份)
新的实例名我叫emrep
orapwd file=orapwemrep password=oracle entries=10
生成参数文件:
cat init.ora | grep -v ^# |grep -v ^$ > initemrep.ora
修改参数文件
先讲spfile 改个名字,下次启动用pfile启动
生成的新的参数文件如下
[oracle@database2 dbs]$ cat init.ora | grep -v ^# |grep -v ^$ > initemrep1.ora
[oracle@database2 dbs]$ more initemrep1.ora
db_name='ORCL'
memory_target=1G
processes = 150
audit_file_dest='<ORACLE_BASE>/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='<ORACLE_BASE>/flash_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='<ORACLE_BASE>'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
control_files = (ora_control1, ora_control2)
compatible ='11.2.0'
[oracle@database2 dbs]$
改成下面这个样子 <ORACLE_BASE>替换掉 控制文件写绝对路径
[oracle@database2 dbs]$ more initemrep.ora
db_name='EMREP'
memory_target=1G
processes = 150
audit_file_dest='/u01/admin/emrep/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/u01/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u01'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
control_files = (/u01/oradata/prod/control01.ctl,/u01/oradata/prod/control02.ctl)
compatible ='11.2.0'
文件该改对了 成功一半;
修改tns文件 标记得地方就是新的主机名
我这里新增了一个监听配置
[oracle@database2 admin]$ more listener.ora
# listener.ora Network Configuration File: /u01/oracle/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = database2)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
Lsnrt =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = database2)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /u01
[oracle@database2 admin]$
启动监听#lsnrctl start
[oracle@database2 dbs]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 14-4月 -2021 21:08:50
Copyright (c) 1991, 2013, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=database2)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for Linux: Version 11.2.0.4.0 - Production
启动日期 14-4月 -2021 20:10:21
正常运行时间 0 天 0 小时 58 分 28 秒
跟踪级别 off
安全性 ON: Local OS Authentication
SNMP OFF
监听程序参数文件 /u01/oracle/network/admin/listener.ora
监听程序日志文件 /u01/diag/tnslsnr/database2/listener/alert/log.xml
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=database2)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
服务摘要..
服务 "emrep" 包含 1 个实例。
实例 "emrep", 状态 BLOCKED, 包含此服务的 1 个处理程序...
命令执行成功
[oracle@database2 dbs]$
sqlplus 链接数据库 启动数据库即可
创建一个spfile
[oracle@database2 admin]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on 星期三 4月 14 21:10:43 2021
Copyright (c) 1982, 2013, Oracle. All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SYS@ emrep>create spfile from pfile
2 ;
文件已创建。
SYS@ emrep>