dataX说明文档2.docx

上传人:b****4 文档编号:5543418 上传时间:2023-05-08 格式:DOCX 页数:19 大小:312.08KB
下载 相关 举报
dataX说明文档2.docx_第1页
第1页 / 共19页
dataX说明文档2.docx_第2页
第2页 / 共19页
dataX说明文档2.docx_第3页
第3页 / 共19页
dataX说明文档2.docx_第4页
第4页 / 共19页
dataX说明文档2.docx_第5页
第5页 / 共19页
dataX说明文档2.docx_第6页
第6页 / 共19页
dataX说明文档2.docx_第7页
第7页 / 共19页
dataX说明文档2.docx_第8页
第8页 / 共19页
dataX说明文档2.docx_第9页
第9页 / 共19页
dataX说明文档2.docx_第10页
第10页 / 共19页
dataX说明文档2.docx_第11页
第11页 / 共19页
dataX说明文档2.docx_第12页
第12页 / 共19页
dataX说明文档2.docx_第13页
第13页 / 共19页
dataX说明文档2.docx_第14页
第14页 / 共19页
dataX说明文档2.docx_第15页
第15页 / 共19页
dataX说明文档2.docx_第16页
第16页 / 共19页
dataX说明文档2.docx_第17页
第17页 / 共19页
dataX说明文档2.docx_第18页
第18页 / 共19页
dataX说明文档2.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

dataX说明文档2.docx

《dataX说明文档2.docx》由会员分享,可在线阅读,更多相关《dataX说明文档2.docx(19页珍藏版)》请在冰点文库上搜索。

dataX说明文档2.docx

dataX说明文档2

dataX研究说明

目录

1.dataX概述1

2.部署dataX1

2.1安装dataX前检查1

2.2mysql数据库安装2

2.3oracle数据库安装3

2.4dataX安装8

3.oracle数据库导入到mysql数据库用例说明9

附录1:

数据库操作语句16

1.dataX概述

DataX是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括OceanBase、MySQL、Oracle、HDFS、Hive、HBase、OTS、ODPS等各种异构数据源之间高效的数据同步功能。

2.部署dataX

2.1安装dataX前检查

在安装DataX前需要检查安装的服务器是否满足以下内容:

1处理器为“X86_64”。

2Python版本>=2.4。

3Java版本>=1.6。

首先以root权限登陆linux系统,执行以下命令查看linux处理器:

[root@localhostbin]#uname-a

Linuxlocalhost.localdomain2.6.32-358.el6.x86_64#1SMPTueJan2911:

47:

41EST2013x86_64x86_64x86_64GNU/Linux

执行以下命令查看Python版本:

[root@localhostbin]#python--version

Python2.6.6

执行以下命令查看java版本:

[root@localhostbin]#java-version

javaversion"1.7.0_09-icedtea"

2.2mysql数据库安装

下载mysql源码,并解压安装。

新建mysql组以及用户:

#groupaddmysql#useradd–gmysqlmysql;

源码包解压:

#tarmysql-5.1.50-linux-x86_64-glibc23.tar.gz;

将解压后的源码包放置/usr/local,并改名为mysql;

设置目录的所属用户为mysql:

#chown–Rmysql/usr/local/mysql;

目录的所属组为mysql:

#chgrp–Rmysql/usr/local/mysql;

初始化数据库,一定要在mysql根目录中执行mysql_install_db:

#/usr/local/mysql/scripts/mysql_install_db–user=mysql;

默认在/user/local/mysql/data设置目录的所属用户为root:

#chown–Rroot/usr/local/mysql;

设置目录的所属用户为mysql:

#chown–Rmysql/usr/local/mysql/data;

复制mysql的配置文件到/etc目录下,并改名为f:

cp/usr/local/mysql/support-files/my-f/etc/f;

复制启动脚本到/etc/rc.d/init.d目录下,并命名为mysqld:

cp/usr/local/mysql/support-files/mysql.server/etc/rc.d/init.d/mysqld;

#servicemysqldstart立即启动mysql;

设置mysql的密码为:

#/usr/local/mysql/bin/mysqladmin–urootpassword123456;

然后输入密码进入mysql,退出mysql命令quit:

#/usr/local/mysql/bin/mysql–uroot–p;

若链接不上数据库做以下处理:

#vi/etc/sysconf/iptables

-AINPUT-mstate--stateNEW-mtcp-ptcp--dport3306-jACCEPT

grantallprivilegeson*.*toroot@'%'identifiedby"123";

2.3oracle数据库安装

一、修改操作系统核心参数

在Root用户下执行以下步骤:

1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件

输入命令:

vi/etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。

oraclesoftnproc2047

oraclehardnproc16384

oraclesoftnofile1024

oraclehardnofile65536

编辑完成后按Esc键,输入“:

wq”存盘退出

2)修改/etc/pam.d/login文件,输入命令:

vi/etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。

sessionrequired/lib/security/pam_limits.so

sessionrequiredpam_limits.so

编辑完成后按Esc键,输入“:

wq”存盘退出

3)修改linux内核,修改/etc/sysctl.conf文件,输入命令:

vi/etc/sysctl.conf,按i键进入编辑模式,将下列内容加入该文件

fs.file-max=6815744

fs.aio-max-nr=1048576

kernel.shmall=2097152

kernel.shmmax=2147483648

kernel.shmmni=4096

kernel.sem=25032000100128

net.ipv4.ip_local_port_range=900065500

net.core.rmem_default=4194304

net.core.rmem_max=4194304

net.core.wmem_default=262144

net.core.wmem_max=1048576

编辑完成后按Esc键,输入“:

wq”存盘退出

4)要使/etc/sysctl.conf更改立即生效,执行以下命令。

输入:

sysctl-p显示如下:

linux:

~#sysctl–p

net.ipv4.icmp_echo_ignore_broadcasts=1

net.ipv4.conf.all.rp_filter=1

fs.file-max=6815744

fs.aio-max-nr=1048576

kernel.shmall=2097152

kernel.shmmax=2147483648

kernel.shmmni=4096

kernel.sem=25032000100128

net.ipv4.ip_local_port_range=900065500

net.core.rmem_default=4194304

net.core.rmem_max=4194304

net.core.wmem_default=262144

net.core.wmem_max=1048576

5)编辑/etc/profile,输入命令:

vi/etc/profile,按i键进入编辑模式,将下列内容加入该文件。

if[$USER="oracle"];then

if[$SHELL="/bin/ksh"];then

ulimit-p16384

ulimit-n65536

else

ulimit-u16384-n65536

fi

fi

编辑完成后按Esc键,输入“:

wq”存盘退出

6)创建相关用户和组,作为软件安装和支持组的拥有者。

创建Oracle用户和密码,输入命令:

useradd-goinstall-gdba-moracle

passwdoracle

然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认。

7)创建数据库软件目录和数据文件存放目录,目录的位置,根据自己的情况来定,注意磁盘空间即可,这里我把其放到oracle用户下,例如:

输入命令:

mkdir/home/oracle/app

mkdir/home/oracle/app/oracle

mkdir/home/oracle/app/oradata

mkdir/home/oracle/app/oracle/product

8)更改目录属主为Oracle用户所有,输入命令:

chown-Roracle:

oinstall/home/oracle/app

9)配置oracle用户的环境变量,首先,切换到新创建的oracle用户下,

输入:

su–oracle,然后直接在输入:

vi.bash_profile

按i编辑.bash_profile,进入编辑模式,增加以下内容:

exportORACLE_BASE=/home/oracle/app

exportORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1

exportORACLE_SID=orcl

exportPATH=$PATH:

$HOME/bin:

$ORACLE_HOME/bin

exportLD_LIBRARY_PATH=$ORACLE_HOME/lib:

/usr/lib

编辑完成后按Esc键,输入“:

wq”存盘退出

二、安装过程

1)当上述系统要求操作全部完成后,注销系统,在图形界面以Oracle用户登陆。

首先将下载的Oracle安装包复制到linux中,用SSH其他ftp工具拷贝。

打开一个终端,运行unzip命令解压oracle安装文件,如:

输入命令:

unziplinux.x64_11gR2_database_1of2.zip

unziplinux.x64_11gR2_database_2of2.zip

解压完成后cd进入其解压后的目录database

输入命令:

cddatabase

2)执行安装,输入命令:

./runInstaller,然后一路安装下去

安装到这一步,可以看到,可以查看到有很多的rpm包没有,我们可以从安装linux的光盘或ISO中(或去D:

\linux_oracle11g_Package)查找所缺的包,使用ftp上传到linux中,然后使用rpm–ivhxxx.rpm--nodeps–force来进行安装(其中加上--nodeps--force代表强制安装,是在直接使用rpm–ivhxxx.rpm安装不成功的情况下用的)等到把包全部都安装好的情况下,再次在oracle图形界面中,执行安装过程2,下来在环境检查过程中,就通过了。

安装完成后,系统会提示你需要用root权限执行2个shell脚本。

按照其提示的路径,找到其所在的位置,如:

我的就在/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh和/home/oracle/oraInventory/orainstRoot.sh新开启一个终端,输入命令:

su–root

cd/home/oracle/app/oracle/product/11.2.0/dbhome_1

shroot.sh

cd/home/oracle/oraInventory

shorainstRoot.sh

三、数据库建库

1)还是在oracle用户的图形界面oracle用户中,新开启一个终端,直接输入命令dbca在图形界面会弹出界面,然后一路安装下去。

安装到这里说明oracle数据库创建完成了。

注:

在安装过程中会让你填写databasename以及sip还有数据库密码password,这三个是需要你记住的,因为在后面会用到。

四、数据库登陆

切换到oracle用户下:

suoracle

启动监听器:

lsnrctlstart;关闭为:

lsnrctlstop;

登陆oracle:

sqlplus/assysdba@orcl-----这里的orcl是我前面建立的数据库名称。

创建表空间:

CREATETABLESPACENOTIFYDBDATAFILE'/home/oracle/app/oradata/orcl/scsdb.dbf'SIZE200MAUTOEXTENDONEXTENTMANAGEMENTLOCALSEGMENTSPACEMANAGEMENTAUTO;

创建用户并指定密码以及所属的表空间:

CREATEUSERscsIDENTIFIEDBYscsDEFAULTTABLESPACENOTIFYDB;

赋予用户权限:

grantconnect,resourcetoscs;

grantunlimitedtablespacetoscs;

grantcreatedatabaselinktoscs;

grantselectanysequence,creatematerializedviewtoscs;

至此oracle安装完成。

2.4dataX安装

rpm安装dataX以及read、write插件:

使用rpm–ivhXXXX.rpm安装dataX工具以及read、write插件。

若使用oraclewrite需要将liboraclewrite.so拷贝到/home/taobao/dataX/plugins目录下。

在/home/taobao/dataX/bin目录下运行./datax.py–etrue即可选择从一个数据库导入到另一个数据库,譬如选择从oracle数据库导入到mysql数据库,生成oraclereader_to_mysqlwriter_1459997169633.xml

输入vioraclereader_to_mysqlwriter_1459997169633.xml打开这个xml文件根据《DataX命令行使用说明》编辑即可。

最后运行./datax.pyoraclereader_to_mysqlwriter_1459997169633.xml即可。

 

3.oracle数据库导入到mysql数据库用例说明

一.创建oracle数据库表实例test

①、用命令登陆oracle数据库:

sqlplusscs/scs@orcl

②、创建名为test的表实例:

createtabletest(idnumber(3),clobdataclob);

4在表实例test中插入数据:

insertintotestvalues(1,’-----sds’)

④、保存表实例:

commit;

二.创建mysql数据库表实例test

①、用命令登陆oracle数据库:

mysql–uroot

②、创建名为liutesttest的mysql数据库:

createdatabaseliutesttest;

5进入到liutest数据库中:

useliutest;

③、创建名为test的表实例:

createtabletest(idint(3),clobdatablob);

④、保存表实例:

commit;

三.执行./datax.py–etrue选择从数据库oracle导入到mysql,生成oraclereader_to_mysqlwriter_1459997169633.xml;

四.编辑oraclereader_to_mysqlwriter_1459997169633.xml

xmlversion="1.0"encoding="UTF-8"?

>

oraclereader

--

description:

Oracledatabasename

mandatory:

true

name:

dbname

-->

--

description:

Oracledatabaseloginusername

mandatory:

true

name:

username

-->

--

description:

Oracledatabaseloginpassword

mandatory:

true

name:

password

-->

--

description:

Oracledatabaseschema

mandatory:

true

name:

schema

-->

--

description:

Oracledatabaseipaddress

mandatory:

true

name:

ip

-->

--

default:

1521

description:

Oracledatabaseport

mandatory:

true

name:

port

-->

--

default:

range:

description:

tablestobeexported

mandatory:

true

name:

tables

-->

--

default:

*

range:

description:

columnstobeselected

mandatory:

false

name:

columns

-->

--

default:

range:

description:

whereclause,like'gmtdate>trunc(sysdate)'

mandatory:

false

name:

where

-->

--

default:

range:

description:

self-definedsqlstatement

mandatory:

false

name:

sql

-->

--

default:

UTF-8

range:

UTF-8|GBK|GB2312

description:

oracledatabaseencode

mandatory:

false

name:

encoding

-->

--

default:

1

range:

0-nosplit,1-rowidsplit,othersntilesplit

description:

howtosplitjob

mandatory:

false

name:

split_mod

-->

--

default:

/home/oracle/product/10g/db/network/admin/tnsnames.ora

range:

description:

tnsfilepath

mandatory:

true

name:

tnsfile

-->

default:

1

range:

1-100

description:

concurrencyofthejob

mandatory:

false

name:

concurrency

-->

mysqlwriter

--

description:

Mysqldatabaseipaddress

mandatory:

true

name:

ip

-->

--

default:

3306

description:

Mysqldatabaseport

mandatory:

true

name:

port

-->

--

description:

Mysqldatabasename

mandatory:

true

name:

dbname

-->

--

description:

Mysqldatabaseloginusername

mandatory:

true

name:

username

-->

--

description:

Mysqldatabaseloginpassword

mandatory:

true

name:

password

-->

--

default:

range:

description:

tabletobedumpeddatainto

mandatory:

true

name:

table

-->

--

range:

description:

orderofcolumns

mandatory:

false

name:

colorder

-->

--

default:

UTF-8

range:

UTF-8|GBK|GB2312

description:

mandatory:

false

name:

encoding

-->

--

description:

executesqlbeforedumpingdata

mandatory:

false

name:

pre

-->

--

description:

executesqlafterdumpingdata

mandatory:

fa

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2