--------------------------------每个节点和DG-------------------------------------------------------------------------
--------------------------------------DG-----------------------------------------------------------------------------------------
-- 修改内核参数
vim /etc/sysctl.conf
#for oracle softe
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
sysctl -p
--添加资源限制参数
vim /etc/security/limits.conf
#for oracle
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
-- 配置login
vim /etc/pam.d/login
session required pam_limits.so
-- 创建用户和组
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
-- 安装目录配置
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
mkdir -p /u01/app/oraInventory
chown -R oracle:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory
-- 环境变量
vim /home/oracle/.bash_profile
export ORACLE_SID=proc
export ORACLE_UNQNAME=proc
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_TERM=xterm; export ORACLE_TERM
export PATH=$ORACLE_HOME/bin:$PATH
umask 022
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
source /home/oracle/.bash_profile
-- 安装必要的软件包
yum -y install binutils compat-libstdc++-33 compat-libcap1 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat
-- 开始安装(打开xmanager-passive)
mv database/ /home/oracle
su - oracle
cd database/
export DISPLAY=192.168.3.1:0.0
./runInstaller
-- 装到94%的时候回弹出一个框,执行两个脚本
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh
--------------------------------------------------每个节点、DG-----------------------------------------------
vim tnsnames.ora
PROCDG =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = procdg)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = proc)
)
)
PROC =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = racscan)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = proc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 主机名)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /u01/app/oracle
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = proc)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1)
(SID_NAME = proc)
)
)
---------------------------节点1-----------------------------------------------------
-- 设置数据库archivelog模式、force logging模式
SQL> select log_mode,force_logging from v$database; #查看数据库归档状态,强日志状态
LOG_MODE FOR
------------ ---
NOARCHIVELOG NO
SQL> alter database force logging; #开启强日志
Database altered.
SQL> shutdown immediate; #关闭数据库
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount; #修改归档状态必须在mount状态
ORACLE instance started.
Total System Global Area 784998400 bytes
Fixed Size 2257352 bytes
Variable Size 541068856 bytes
Database Buffers 239075328 bytes
Redo Buffers 2596864 bytes
Database mounted.
SQL> alter database archivelog;#修改归档状态必须在mount状态,并且其他实例必须是not open状态
alter database archivelog
*
ERROR at line 1:
ORA-01126: database must be mounted in this instance and not open in any
instance
SQL> alter database archivelog;#开启归档
Database altered.
-- 再次查看archive和force logging状态
SQL> select log_mode,force_logging from v$database;
LOG_MODE FOR
------------ ---
ARCHIVELOG YES
-- 开启数据库到open状态,其他节点也打开
SQL> alter database open;
Database altered.
-------------------------------------------节点1--------------------------------------------------------------------
-- 传输密码文件,参数文件到备库
cd /u01/app/oracle/product/11.2.0/db_1/dbs/
scp orapwproc1 procdg:/u01/app/oracle/product/11.2.0/db_1/dbs/orapwproc
scp initproc1.ora procdg:/u01/app/oracle/product/11.2.0/db_1/dbs/initproc.ora
-----------------------------------------节点1-----------------------------------------------------
-- 修改主库的参数文件
[oracle@rac01 rmanbak]$ vim initproc1.ora
#以下为配置DG而添加的内容
*.db_unique_name='proc'
*.log_archive_config='dg_config=(proc,procdg)'
*.log_archive_dest_1='location=+DATA/proc/archivelog #一般放在+FRA
valid_for=(all_logfiles,all_roles) db_unique_name=proc'
*.log_archive_dest_2='service=procdg
valid_for=(online_logfiles,primary_role)
db_unique_name=procdg'
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=enable
*.log_archive_format='arc_%t_%s_%r.arc'
#为switchover或failover而设置的参数
*.fal_server=procdg
*.standby_file_management='auto'
*.db_file_name_convert='/u01/app/oracle/oradata/proc/datafile','+DATA/proc/datafile'
*.log_file_name_convert='/u01/app/oracle/oradata/proc/onlinelog','+DATA/proc/onlinelog'
-- 修改完后创建到spfile
SQL> create spfile from pfile;
---------------------------------DG-------------------------------------
-- 修改备库参数文件
*.control_files='/u01/app/oracle/oradata/proc/controlfile/control01.ctl'
*.db_unique_name='procdg'
*.log_archive_config='dg_config=(proc,procdg)'
*.log_archive_dest_1='location=/u01/app/oracle/oradata/proc/archivelog
valid_for=(all_logfiles,all_roles) db_unique_name=procdg'
*.log_archive_dest_2='service=proc LGWR SYNC AFFIRM
valid_for=(online_logfiles,primary_role)
db_unique_name=proc'
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=enable
*.log_archive_format='arc_%t_%s_%r.arc'
*.fal_server=proc
*.standby_file_management=auto
*.db_file_name_convert='+DATA/proc/datafile','/u01/app/oracle/oradata/proc/datafile'
*.log_file_name_convert='+DATA/proc/onlinelog' ,'/u01/app/oracle/oradata/proc/onlinelog'
-- 在备库创建相应目录
mkdir -p /u01/app/oracle/admin/proc/adump
mkdir -p /u01/app/oracle/oradata/proc/controlfile
mkdir -p /u01/app/oracle/oradata/proc/archivelog
mkdir -p /u01/app/oracle/oradata/proc/datafile
mkdir -p /u01/app/oracle/oradata/proc/onlinelog
--从刚才创建的参数创建spfile
SQL> create spfile from pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initproc.ora'
---------------------------------节点1-----------------------
-- 在主库创建redolog
SQL> select thread#,group#,bytes/1024/1024 M from v$log;
THREAD# GROUP# M
---------- ---------- ----------
1 1 50
1 2 50
2 3 50
2 4 50
SQL> alter database add standby logfile thread 1 group 5 size 50M ,group 6 size 50M
,group 7 size 50M;
Database altered.
SQL> alter database add standby logfile thread 2 group 8 size 50M ,group 9 size 50M
,group 10 size 50M ;
Database altered.
---------------------------------------------------------任意节点----------------
rman target sys/oracle@proc auxiliary sys/oracle@procdg
duplicate target database for standby from active database nofilenamecheck;
--------------------------------------DG---------------------------
- Yearning v1.3.0 发布,Web 端 SQL 审核平台
企业级MYSQL web端 SQL审核平台. Website 官网 www.yearning.io Feature 功能 数据库字典自动生成 SQL查询 查询工单 导出 自动补全,智能提示 查询语句审 ...
- C# post json 匿名类 序列化
//第一步 建立HTTP请求对象 var httpWebRequest = (HttpWebRequest)WebRequest.Create(apiURL); httpWebRequest.Cont ...
- 开源作业调度框架 - Quartz.NET - ASP.NET部署
经过这次使用实践,感觉Quartz.NET使用起来方便快捷 但是在发布部署时我们会遇到一个问题 那就是当Web应用程序经常没有按照预计的时间去执行. 那问题出在哪里了呢? 根据以往的经验很容易就可以找 ...
- Java的数组堆溢出问题
在写测试方法的时候,生成了一个数组,之后报了堆溢出错误,这样的报错一般来说只要有一些JVM的基础都知道要用-Xmx.-Xms来开更大的堆,接下来看看我碰到的一个堆溢出的问题 在测试代码中开了一个500 ...
- SQL server安装连接
原文:https://blog.csdn.net/andrewniu/article/details/78485312 原文:https://jingyan.baidu.com/article/76a ...
- linux配置路径PATH问题
临时: 终端输入 export PATH=/myPath:$PATH 等号左右无空格 永久: 在用户家目录下即-目录, ...
- Opatching PSU in Oracle Database 11g Release 2 RAC on RHEL6
Opatching PSU in Oracle Database 11g Release 2(11.2.0.4) RAC on RHEL6 1) 升级opatch工具 1.1) For GI home ...
- Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-3-Command-line completion命令补全
Command-line completion https://docs.docker.com/machine/completion/ Installing Command Completion——实 ...
- JS对表格排序(支持对序号,数字,字母,日期)
JS对表格排序(支持对序号,数字,字母,日期) 前不久看到淘宝组件有"对表格排序的插件" 如想要看 可以看这个地址 http://gallery.kissyui.com/KSort ...
- Python2.7-time
time模块,与datetime模块功能有所重合,time较为简单明了,若只需要当前时间或日期或是sleep,直接用time模块,需要更复杂的时间间隔等情况用datetime模块更好 1.获得time ...