奕新集团GG环境搭建
图片太大,上传到百度云盘。
系统:OracleLinux 5.9
数据库版本11.2.0.3
hostname source target
vim /etc/hosts
172.16.10.140 142
内核参数
D:\Oracle官方文档\E11882_01\install.112\e24326\toc.htm
添加用户组
[root@source ~]# groupadd -g 500 oinstall
[root@source ~]# groupadd -g 511 dba
[root@source ~]# useradd -u 500 -g 500 -G 511 oracle
[root@source ~]# echo oracle | passwd oracle --stdin
Changing password for user oracle.
passwd: all authentication tokens updated successfully.
[root@source ~]# mkdir -p /u01/oracle/11g
[root@source ~]# mkdir -p /u01/grid/11g
[root@source ~]# chown -R oracle.oinstall /u01
[root@source ~]# su - oracle
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
compat-libstdc++-33-3.2.3 (32 bit)
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-2.5-24 (32 bit)
glibc-common-2.5glibc-devel-2.5
glibc-devel-2.5 (32 bit)
glibc-headers-2.5
ksh-20060214
libaio-0.3.106
libaio-0.3.106 (32 bit)
libaio-devel-0.3.106
libaio-devel-0.3.106 (32 bit)
libgcc-4.1.2
libgcc-4.1.2 (32 bit)
libstdc++-4.1.2
libstdc++-4.1.2 (32 bit
libstdc++-devel 4.1.2make-3.81sysstat-7.0.2
解决:
[root@target ~]# vim /etc/ntp.conf
[root@target ~]# /sbin/service ntpd stop
Shutting down ntpd: [FAILED]
[root@target ~]# /sbin/service ntpd status
ntpd is stopped
[root@target ~]# chkconfig ntpd off
[root@target ~]# mv /etc/ntp.conf /etc/ntp.conf.bak
解决:
执行完上面2个脚本执行吓面脚本
安装数据库软件不建立数据库
环境监测
耐心等待
执行脚本 我没有截图
点击close
dbca 有些时候报错 说不能找到命令说明我们的环境变量设置错误。等会来改
DBCA命令创建数据库
这里不用启用归档。
等待
处理这个问题
指定环境变量中ORACLE_SID
指定了之后 变成
去掉试试
解决了 INS-32025问题
解决 INS -32018 问题
注意 INS-32025 问题 当INS-32018解决之后 INS-32025问题就被解决了。
更改环境变量
Edit the response file and remove the quotes around ORACLE_HOME and ORACLE_BASE variables
ORACLE_BASE=/u01/oracle/product
ORACLE_HOME=/u01/oracle/product/11gR2_database
- retry the installation
下次要安装11gr2版本 环境变量全部设置成下面的目录
vim /home/oracle/.bash_profile
exportORACLE_BASE=/u01/oracle
exportGRID_HOME=/u01/grid/11g
exportDB_HOME=/u01/oracle/11g
exportORACLE_HOME=/u01/oracle/product/
PATH=$GRID_HOME/bin:/bin:/usr/bin:/usr/local/bin:/usr/sbin:$HOME/bin
export PATH
alias db=". ~/.db"
alias asm=". ~/.bash_profile"
INS-32025 问题
INS-32025 while installing 11.2 examples (文档 ID 1325924.1) |
In this Document
APPLIES TO:
Oracle Database - Enterprise Edition - Version 11.2.0.1 and later
Oracle Universal Installer - Version 11.2.0.1 and later
Oracle Database - Standard Edition - Version 11.2.0.1 and later
Information in this document applies to any platform.
Installation of 11.2 Examples into an 11.2 ORACLE_HOME fails with:
INFO: Launching Oracle Examples Installer
SEVERE: [FATAL] [INS-32025] The chosen installation conflicts with software already installed in the given Oracle home.
CAUSE: The chosen installation conflicted with software already installed in the given Oracle home.
ACTION: Install into a different Oracle home.
SEVERE: [FATAL] [INS-52001] Oracle Database Examples can only be installed into an existing Oracle Home.
CAUSE: Oracle Database Examples can only be installed into an existing Oracle Home.
ACTION: Oracle Database Examples can only be installed into an existing Oracle Home.
The cause is "/" after ORACLE_HOME location.
In this case
/oracle/product/11.2.0/
was entered for ORACLE_HOME.
1. Remove the trailing "/" (slash) from the the ORACLE_HOME path when prompted to enter this information, for example:
change
/oracle/product/11.2.0/
to
第二种方法
分别使用grid用户和oracle用户
oracle用户
export ORACLE_SID=target
export ORACLE_BASE=/u01/oracle
export GRID_HOME=/u01/grid/11g
export DB_HOME=/u01/oracle/11g
export ORACLE_HOME=/u01/oracle/product
PATH=$GRID_HOME/bin:/bin:/usr/bin:/usr/local/bin:/usr/sbin:$HOME/bin
export PATH
alias db=". ~/.db"
alias asm=". ~/.bash_profile"
alias sqlplus='rlwrap sqlplus'
用这个
export ORACLE_SID=target
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=/u01/oracle/11.2.3/db_1
PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/bin:/usr/sbin:$HOME/bin
export PATH
alias db=". ~/.db"
alias asm=". ~/.bash_profile"
grid用户
#export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/grid
export ORACLE_HOME=/u01/app/grid/11.2.3
export PATH=$ORACLE_HOME/bin:$PATH:/usr/local/bin/:.
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
alias sqlplus='rlwrap sqlplus'
mkdir -p /u01/grid/11g/
[root@localhost ~]# mkdir -p /u01/grid
[root@localhost ~]# mkdir -p /u01/oracle/11g
[root@localhost ~]# mkdir -p /u01/app/grid
[root@localhost ~]# chown grid.oinstall /u01/app/grid/
[root@localhost ~]# chmod -R 775 /u01
chown oracle.oinstall /u01/oracle
grid用户
这里我不掩饰了。
grid软件
这里检查失踪报错。
原因 就是 在 /etc/security/limits.conf 文件中
配置 grid 和oracle用户
#==============add =================
#grid
grid soft nproc 8188
grid hard nproc 65536
grid soft nofile 4096
grid hard nofile 262144
#oracle
oracle soft nproc 8188
oracle hard nproc 65536
oracle soft nofile 4096
oracle hard nofile 262144
上面是配置单实例 下面是集群
ASM磁盘组
oracle用户:
oracle软件
oracle数据库
用这个
export ORACLE_SID=target
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=/u01/oracle/11.2.3/db_1
PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/bin:/usr/sbin:$HOME/bin
export PATH
alias db=". ~/.db"
alias asm=". ~/.bash_profile"
开始配置 GG
源、目标数据库上target
oracle用户
mkdir erp
1 创建表空间
CREATE TABLESPACE erp000 DATAFILE '/home/oracle/erp/erp00.dbf' SIZE 100M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
CREATE TABLESPACE erp001 DATAFILE '/home/oracle/erp/erp01.dbf' SIZE 100M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
2 创建用户
CREATE USER erp000 IDENTIFIED BY erp000 DEFAULT TABLESPACE erp000 QUOTA UNLIMITED ON erp000;
CREATE USER erp001 IDENTIFIED BY erp001 DEFAULT TABLESPACE erp001 QUOTA UNLIMITED ON erp001;
3 授权
grant resource,connect to erp000
grant resource,connect to erp001
grid 管理的是listener.ora
oracle 用户管理的是 tnsnames.ora
6 打开源端 force logging之后 我执行一次归档之后操作
SQL> alter system archive log current;
alter system archive log current
*
ERROR at line 1:
ORA-00258: manual archiving in NOARCHIVELOG mode must identify log
7 打开源库补充日志
SQL> alter system archive log current;
alter system archive log current
*
ERROR at line 1:
ORA-00258: manual archiving in NOARCHIVELOG mode must identify log
8 创建单独的表空间和用户(源*目标)
create user goldengate identified by goldengate default tablespace gg_tbs temporary tablespace
temp quota unlimited on users;
ORA-01756: quoted string not properly terminated
字符集的问题
源:
create tablespace gg_tbs datafile '/oracle/oradata/source/gg.ora' size 300m
autoextend on next 20m maxsize unlimited logging online permanent extent management local
autoallocate blocksize 16k segment space management auto flashback on;
目标:
create tablespace gg_tbs datafile '/oracle/oradata/target/gg.ora' size 300m
autoextend on next 20m maxsize unlimited logging online permanent extent management local
autoallocate blocksize 16k segment space management auto flashback on;
*
ERROR at line 1:
ORA-29339: tablespace block size 16384 does not match configured block sizes
SQL> show parameter db_block_size
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_size integer 8192
SQL> select component,current_size from v$sga_dynamic_components;
COMPONENT CURRENT_SIZE
---------------------------------------------------------------- ------------
shared pool 310378496
large pool 4194304
java pool 4194304
streams pool 0
DEFAULT buffer cache 197132288
KEEP buffer cache 0
RECYCLE buffer cache 0
DEFAULT 2K buffer cache 0
DEFAULT 4K buffer cache 0
DEFAULT 8K buffer cache 0
DEFAULT 16K buffer cache 0
COMPONENT CURRENT_SIZE
---------------------------------------------------------------- ------------
DEFAULT 32K buffer cache 0
Shared IO Pool 0
ASM Buffer Cache 0
14 rows selected.
解决:
alter system set db_16k_cache_size=36m;
grant connect to goldengate;
grant alter any table to goldengate;
grant alter session to goldengate;
grant create session to goldengate;
grant flashback any table to goldengate;
grant select any table to goldengate;
grant select any dictionary to goldengate;
grant resource to goldengate;
grant drop any table to goldengate;
grant dba to goldengate;
源
[oracle@source gg]$ ./ggsci
./ggsci: error while loading shared libraries: libnnz11.so: cannot open shared object file: No such file or directory
目标
[oracle@target gg]$ ./ggsci
./ggsci: error while loading shared libraries: libnnz11.so: cannot open shared object file: No such file or directory
[oracle@target gg]$
现在的目录
export ORACLE_SID=source
export ORACLE_BASE=/u01/oracle
export GRID_HOME=/u01/grid/11g
export DB_HOME=/u01/oracle/11g
export ORACLE_HOME=/u01/oracle/product
PATH=$GRID_HOME/bin:/bin:/usr/bin:/usr/local/bin:/usr/sbin:$HOME/bin
export PATH
alias db=". ~/.db"
alias asm=". ~/.bash_profile"
alias sqlplus='rlwrap sqlplus'
~
source
exportORACLE_SID=source
exportORACLE_SID=ggsource
exportORACLE_BASE=/u01/oracle
exportGRID_HOME=/u01/grid/11g
exportDB_HOME=/u01/oracle/11g
exportORACLE_HOME=/u01/oracle/product
PATH=$GRID_HOME/bin:$ORACLE_BASE/gg11:/bin:/usr/bin:/usr/local/bin:/usr/sbin:$HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_BASE/gg11:$LD_LIBRARY_PATH
export NLS_LANG=AMERICAN_AMERICA.UTF8
export LANG=en_US.UTF-8
alias db=". ~/.db"
alias asm=". ~/.bash_profile"
alias sqlplus='rlwrap sqlplus'
cd $ORACLE_BASE/gg11
检查生成的环境。
[oracle@source gg11]$ env | grep LD
OLDPWD=/home/oracle
LD_LIBRARY_PATH=/u01/oracle/product/lib:/u01/oracle/gg11:/u01/oracle/product/lib:/u01/oracle/gg11:
[oracle@source gg11]$
OK 连接进来了。
为什么会出现那个 ./ggsci: error while loading shared libraries: libnnz11.so: cannot open shared object file: No such file or directory
是因为 环境变量没有设置 怎样设置环境变量。我的GG中有。
[oracle@source gg11]$ ./ggsci
Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.1 OGGCORE_11.2.1.0.1_PLATFORMS_120423.0230_FBO
Linux, x64, 64bit (optimized), Oracle 11g on Apr 23 2012 08:32:14
Copyright (C) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
GGSCI (source) 1> create subdirs
Creating subdirectories under current directory /u01/oracle/gg11
Parameter files /u01/oracle/gg11/dirprm: already exists
Report files /u01/oracle/gg11/dirrpt: created
Checkpoint files /u01/oracle/gg11/dirchk: created
Process status files /u01/oracle/gg11/dirpcs: created
SQL script files /u01/oracle/gg11/dirsql: created
Database definitions files /u01/oracle/gg11/dirdef: created
Extract data files /u01/oracle/gg11/dirdat: created
Temporary files /u01/oracle/gg11/dirtmp: created
Stdout files /u01/oracle/gg11/dirout: created
我在目标端这个么干的:
export ORACLE_SID=target
export ORACLE_SID=ggtarget
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=/u01/oracle/11.2.3/db_1
export PATH=$ORACLE_HOME/bin:/oracle/gg:/bin:/usr/bin:/usr/local/bin:/usr/sbin:$HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/oracle/gg:$LD_LIBRARY_PATH
export NLS_LANG=AMERICAN_AMERICA.UTF8
export LANG=en_US.UTF-8
alias db=". ~/.db"
alias asm=". ~/.bash_profile"
alias sqlplus='rlwrap sqlplus'
目标端
[oracle@target ~]$ cd /oracle/gg/
[oracle@target gg]$ env | grep LD
OLDPWD=/home/oracle
LD_LIBRARY_PATH=/u01/oracle/11.2.3/db_1/lib:/oracle/gg:
[oracle@target gg]$
源端
EXTRACT EINI01
USERID goldengate,PASSWORD goldengate
RMTHOST target,MGRPORT 7809
RMTTASK REPLICAT,GROUP RINI01
TABLE goldengate.MHZ1;
TABLE goldengate.MHZ2;
目标端
REPLICAT RINI01
ASSUMETARGETDEFS
USERID goldengate,PASSWORD goldengate
DISCADFILE ./dirrpt/RINI01.dsc,PURGE
MAP goldengate.*,TARGET goldengate.*;
问题: 尝试1
[/u01/oracle/gg11/extract(__gxx_personality_v0+0x38a) [0x4e8b7a]]
2013-11-05 09:24:33 ERROR OGG-00664 OCI Error beginning session (status = 1034-ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory).
2013-11-05 09:24:33 ERROR OGG-01668 PROCESS ABENDING.
解决 OGG-00064
尝试1 我的不是这个问题
ERROR OGG-00664 OCI Error beginning session (status = 1017-ORA-01017:
CASE 源库开始抽取,通过VIEW REPORT EXP1:
ERROR OGG-00664 OCI Error beginningsession (status = 1017-ORA-01017:
解决方案:
原因:配置中账户密码不对
修改抽取或者复制配置文件的账户密码;
进入环境变量的目录
[oracle@source gg11]$ pwd
/u01/oracle/gg11
-rw-
Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.1 OGGCORE_11.2.1.0.1_PLATFORMS_120423.0230_FBO
Linux, x64, 64bit (optimized), Oracle 11g on Apr 23 2012 08:32:14
Copyright (C) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
GGSCI (source) 1> edit params mgr
尝试2
环境变量
进入环境变量
cd /oracle/gg/
ggsci
Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.1 OGGCORE_11.2.1.0.1_PLATFORMS_120423.0230_FBO
Linux, x64, 64bit (optimized), Oracle 11g on Apr 23 2012 08:32:14
Copyright (C) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
GGSCI (target) 1> edit params mgr
注意: 测试数据
复制 从 source 复制到target数据。
source 数据上必须有数据 target数据上必须没有数据实现一个单向同步。
目标:
GGSCI (source) 3> view params eini01
#EXTRACT EINI01
#USERID goldengate,PASSWORD goldengate
#RMTHOST target,MGRPORT 7809
#RMTTASK REPLICAT,GROUP RINI01
#TABLE goldengate.mhz1;
#TABLE goldengate.mhz2;
extract eini01
setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
userid goldengate,password goldengate
rmthost 172.16.10.142,mgrport 7809
rmttask replicat,group rini01
table goldengate.mhz1;
table goldengate.mhz2;
目标:
REPLICAT RINI01
ASSUMETARGETDEFS
USERID goldengate,PASSWORD goldengate
DISCADFILE ./dirrpt/RINI01.dsc,PURGE
MAP goldengate.*,TARGET goldengate.*;
replicat rini01
setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
assumetargetdefs
userid goldengate,password goldengate
discardfile ./dirrpt/rini01.dsc,purge
map goldengate.*,target goldengate.*;
~
注意:
注意:用INITIAL EXTRACT进行一次性抽取初始化数据时,目标库的replicat进程不用手动启动,只要源库的extract进程start以后,自动会同步到目标库,而且此时用info all是看不到extract和replicat进程的,只能看见mgr进程
OGG-00664 OCI Error beginning session ORA-27101: shared memory realm does not exist
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=source)(PORT=1521)))
The listener supports no services
The command completed successfully
[oracle@source admin]$ cat listener.ora
# listener.ora Network Configuration File: /u01/grid/11g/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.10.140)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /u01/oracle
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON# line added by Agent
[oracle@source admin]$ sqlplus goldengate/goldengate@source
SQL*Plus: Release 11.2.0.3.0 Production on Thu Nov 7 06:45:41 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
ERROR:
ORA-12504: TNS:listener was not given the SERVICE_NAME in CONNECT_DATA
Enter user-name:
解决:
停止 lsnrctl stop
srvctl stop linstener
netmgr
新建 Linstener
新建 tnsnames.ora
srvctl enable listener
crs_stat -all
OK
----------------------------------
报错:
oracle@source admin]$ sqlplus goldengate/goldengate@source
SQL*Plus: Release 11.2.0.3.0 Production on Thu Nov 7 07:17:01 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor
Enter user-name:
[oracle@source admin]$ lsnrctl status
卸载GG 先停止所有进程
进入 gg安装目录
info all
rm -rf gg
就这样解决了这个问题 数据库实例没有启动
2013-11-07 09:45:29 ERROR OGG-00446 Missing filename opening checkpoint file.
2013-11-07 09:45:29 ERROR OGG-01668 PROCESS ABENDING.
dblogin userid goldengate,password goldengate
add checkpointtable goldengate.checkpoint
add replicat rora01,exttrail ./dirdat/rt,begin now,checkpointtable goldengate.checkpoint
今天早上遇到一个错误
GGSCI (target) 3> add checkpointtable
ERROR: Missing checkpoint table specification.
GGSCI (target) 4> add checkpointtable
ERROR: Missing checkpoint table specification.
解决:
1 GGSCI (db2) 1> edit params ./GLOBALS
2 GGSCI (db2) 2> view params ./GLOBALS
3 checkpointtable ogg.ggschkpt
4
5 GGSCI (db2) 3> exit //这里需要退出ggsci终端 编辑之后必须退出
6 [oracle@db2 ~]$ sqlplus ogg/ogg
7 SQL> select tname from tab;
8 no rows selected
9
10 [oracle@db2 ogg]$ ggsci
11 GGSCI (db2) 1> dblogin userid ogg,password ogg
12 Successfully logged into database.
13
14 GGSCI (db2) 2> add checkpointtable </