暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

使用GGCS实现从MySQLCS到DBCS的数据复制3

凛冬未至 2017-12-18
531

正文共: 2265字 19图

预计阅读时间: 6分钟

接上一步:

《使用GGCS实现从MySQLCS到DBCS的数据复制1》

《使用GGCS实现从MySQLCS到DBCS的数据复制2》

 

2.3为MySQL数据库设置OGG

2.3.1 在Slave数据库上安装OGG

从Oracle Edelivery网站上下载OGG forMySQL,本例中使用ogg4mysql12.2.0.1.zip。登录Slave数据库服务器,在oracle用户下创建OGG的安装目录/u01/oggs,开始安装OGG。OGG的安装非常简单,把安装介质直接解压到OGG的安装目录即可。

进入OGG命令行界面,如图

 

2.3.2 在Slave库上设置OGG抽取进程

1. 创建子目录

2.编辑manager进程配置参数

在GGSCI中编辑manager进程端口,本例中使用缺省的端口号7809.

 

3.编辑GLOBALS参数,增加checkpoint表

可以用文本编辑器编辑OGG根目录下的配置文件GLOBALS,也可以在GGSCI中编辑,如图

CheckpointTablemydb.oggchkpt

4.登录Slave库,创建checkpoint表,如图:

dbloginsourcedb mydb userid root password Welcome_1;

addCheckpointTable

注:在OGG访问MySQL时,可能会报“OGG-00769”的错误信息:

WARNING OGG-00769  MySQL Login failed: . SQL error (2002). Can'tconnect to local MySQL server through socket '/tmp/mysql.sock' (2).

ERROR: Failed toconnect to MySQL database engine for HOST localhost, DATABASE , USER root, PORT3306.

这是因为OGG缺省使用/tmp/mysql.sock socket文件来访问MySQL数据库,但是我们创建的MySQL服务缺省使用/var/lib/mysql/mysql.sock。这种情况下,有两种解决办法,一种是修改MySQL的socket文件,改为用/tmp/mysql.sock,第二种方法是在/tmp目录下,是创建一个名为mysql.sock的符号链接,指向/var/lib/mysql/mysql.sock。本例中,我们使用第二种方式,创建符号链接,如图:

ln-s var/lib/mysql/mysql.sock tmp/mysql.sock

 

5.编辑抽取进程参数,添加抽取进程

编辑抽取进程extmysql的参数,可以使用文本编辑工具,也可以在GGSCI中编辑,如图:

Extractextmysql

ExtTrail./dirdat/aa

SourceDBmydb, UserID root, Password Welcome_1

TranLogOptionsAltLogDest var/log/mysql/mysql-bin.index

Tablemydb.TCUSTMER;

注:

参数TranLogOptions: 指定MySQL的日志文件名,与/etc/my.cnf配置一致。在MySQL中,参数AltLogDest与复制Oracle数据库中,在GGSCI中执行AddTrandata命令作用一致。

 

在GGSCI中添加抽取进程extmysql,如图:

addextract extmysql,tranlog,begin now

addexttrail ./dirdat/aa,extract extmysql

6.编辑数据传递进程参数,添加数据传递进程

编辑抽取进程pummysql的参数,可以使用文本编辑工具,也可以在GGSCI中编辑,如图:

Extractpummysql

RmtHost129.150.122.50, MgrPort 7755,socksproxy 127.0.0.1:1080

RmtTrail./dirdat/ac

Passthru

Tablemydb.TCUSTMER;

注: DataPump进程将使用SOCKET5 Proxy来加密传输数据,本例中SOCKET5 Proxy将使用本地的1080端口。

 

在GGSCI中添加传递进程pummysql,如图:

查看刚刚添加的两个进程状态,如图:

 

2.4设置SSH Tunnel

2.4.1从GGCS服务器上导出SSH 私钥文件,然后使用ftp工具将SSH私钥上传到Slave库所在服务器。

使用Putty的Key Generator工具,从GGCS服务器上导出一个OpenSSHKey文件:

打开Putty Key generator,点击“Conversations”,选择“export OpenSSHKey”,保存到本地,然后用FTP工具上传到Slave数据库所在服务器。如图:

在Slave数据库所在服务器上,修改刚刚上传的私钥权限,如图:

2.4.2 设置SSH tunnel

在Slave数据库服务器上,执行以下命令,设置SSH tunnel:

ssh-i ~/.ssh/SSHKey -v -N -D 127.0.0.1:1080 opc@129.150.122.50

通过以上命令,设置SSHtunnel,OGG将使用本地的1080端口,通过SSH tunnel将数据传输到目标(GGCS,IP地址为129.150.122.50)。

执行以上命令后,在提示输入信息处,输入yes:

《图16》

输入yes,然后回车。


当屏幕输出信息中,看到以下信息时,表示SSH tunnel已经成功创建,如图:


未完待续!!! 


文章转载自凛冬未至,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论