资讯专栏INFORMATION COLUMN

阿里DTS迁移Oracle至Polardb-o过程实录

IT那活儿 / 1271人阅读
阿里DTS迁移Oracle至Polardb-o过程实录
一. 初始化系统脚本

环境准备:

需要⽤户准备可以⼀个可以连接的Mysql5.6、5.7数据库作为元数据库(请把sql_mode设置⾮严格模式),在元数据库内创建好数据库,名称是:dtsdb

初始化DTSP配置:

root用户登陆
cd / && mkdir dts
上传DTS安装包
tar -zxvf dts_poc_v3.7.tar.gz
修改dts_init_shell.sh
mysql数据库IP、用户、密码、端口
db_host=192.168.123.123
db_user=root
db_password=root
db_port=3306
dts服务IP
dts_console_ip=192.168.123.123

执行命令 source ./dts_init_shell.sh,一定要用source来执行,否则不会生效

执行checkt_dts.sh检查对应的变量是否能获取到


⼆. 开始安装DTS各个组件

1. 安装元数据库

tar -zxvf dts_metadb_v3.7.tar.gz //解压元数据库包
cd metadb //进入medadb目录
sh init_metadb.sh //初始化元数据库
cat start-db.log //查看是否升级成功

2. 安装dts portal 服务

tar -zxvf dts_portal_xxxx.tar.gz // 解压portal包
cd portal // 进⼊portal ⽬录
sh ./start_all.sh 
ps axu |grep amp-schedule 等一会检查进程是否正常

3. 安装dts master 服务

tar -zxvf dts_master_v3.7.tar.gz //解压master包
cd master // 进⼊master⽬录
sh start_all.sh // 安装脚本来启动master服务
ps axu |grep amp-master.jar // 查看进程是否正常

4. 安装dts proxy 服务

tar -zxvf dts_proxy_v3.7.tar.gz //解压proxy包
cd proxy // 进⼊proxy⽬录
sh start.sh // 启动proxy服务
ps axu |grep proxy.jar // 查看进程是否正常

5. 安装 dts_node服务

tar -zxvf dts_node_xxxx.tar.gz // 解压node包
cd node // 进入node目录
sh ./start_all.sh // 安装node服务
ps axu |grep node.jar // 查看node进程是否正常

6. 安装 dts numen 服务

tar -zxvf dts_numen_v3.7.tar.gz // 解压numen包
cd numen // 进入numen目录
sh start.sh // 安装numen服务
ps axu |grep dts-op //查看进程是否正常

7. 安装dts tengine 服务

tar -zxvf dts_tengine_v3.7.tar.gz //解压tengine服务包
cd tengine //进入tengine目录
sh init_tengine.sh // 按照tengine组件
tail -f init.log // 查看组件是否安装正常
tengine 组件按照完成之后,按照服务
cd /dts/tengine //进入到安装目录
sh ./start.sh // 进入安装tegine服务
ps axu | grep tengine // 查看是否正常


三. 安装ADAM

上传ADAM安装包,解压

tar -zxvf adam-saas-5.0.1.tar.gz
cd adam-saas-5.0.1/bin
sh installADAM.sh
ADAM安装时使用admin用户进行启动
cd /home/admin
修改parameters.properties配置文件
# 数据库地址,使用默认库,不用修改
database.url=jdbc:mysql://
192.168.123.123:3306
database.username=root
database.password=root
# 本地文件管理地址及位置,管理地址必改,填写外网实际ip,如:192.168.123.123修改为192.168.0.1
adam.local.downloadUrl=http://
192.168.123.123:8111/api/file/localDownload
adam.nfs.ip=
192.168.123.123# 各服务端口,如端口不冲突可不用修改
adam-file-storage-web.server.port=8111
adam-eoa.server.port=
8080
adam-eoa.management.port=7112
adam-stand-alone-one.server.port=10081
studio-saas-service.server.port=611
切换到admin用户
执行pwd命令,确认当前用户为admin,当前目录为/home/admin
执行sh run.sh init命令,初始化数据库。
执行sh run.sh start命令启动ADAM
启动时会使用admin用户的sudo -i 权限,需要输入admin密码
执行sh run.sh status命令检查ADAM服务是否启动成功


四. 验证ADAM、DTS

1. DTS访问地址http://192.168.123.123:8088/

http://192.168.123.123/

2. ADAM访问地址:http://192.168.123.123:8080/


五. 安装polardb

1. 创建需求操作系统组和用户

执行以下命令,创建polardb 用户组。
groupadd polardb
执行以下命令,创建polardb 用户。
useradd -g polardb polardb
执行以下命令,设置polardb用户的密码。passwd polardb
若要以polardb这个用户执行下面的文件系统初始化步骤,需要给这个用户赋予sudo权限,
使用visudo命令,在sudo文件中,加入下行:
polardb ALL=(ALL) ALL

2. 安装PolarDB-O数据库

root用户登陆polardb主机
上传rpm包到服务器
sudo rpm -i PolarDB-O-0200-2.0.0-20200709.alios7.x86_64.rpm

3. 创建需求操作系统组和用户

执行以下命令,切换到polardb用户。
su - polardb
执行以下命令,打开bash_profile文件。
vi ~/.bash_profile
向.bash_profile添加以下内容:
export PGPORT=5432
export PGDATA=/data
export LANG=en_US.utf8
export PGHOME=/usr/local/polardb_o_current
export PFSHOME=/usr/local/polarstore/pfsd
#export PFSDISK=
#export PFSDIR=
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
export PATH=$PGHOME/bin:$PFSHOME/bin/:$PATH
export PGHOST=$PGDATA
export PGUSER=polardb
export PGDATABASE=polardb执行以下命令,使环境变量生效:
source ~/.bash_profile

4. 修改postgresql.conf配置文件

shared_buffers = 256GB
temp_buffers = 16GB
default_with_oids = on
default_with_rowids = on
listen_addresses = * 
port = 5432
max_connections = 2048
unix_socket_directories = .
timezone = UTC-8
log_timezone = UTC-8
log_destination = csvlog
logging_collector = on
log_directory = polardb_log
polar_enable_shared_storage_mode=off
polar_hostid=1
polar_datadir=$PGDATA
polar_disk_name=$PGDATA
#polar_storage_cluster_name=disk

启动数据库
pg_ctl start -D $PGDATA
连接数据库后
创建crmhb数据库
创建so5用户
赋权给so5


六. 数据库画像、评估、结构迁移


1. 数据库画像采集

ADAM可以使用在线画像采集,以下使用离线画像采集

oracle数据库服务中执行采集脚本,生成data.zip文件
-- 创建采集用户 eoa_user, 并设置密码为 eoaPASSW0RD
  create user eoa_user identified by eoaPASSW0RD default tablespace users;
 ------ 查询权限
  grant connect,resource,select_catalog_role,select any dictionary to eoa_user;
 ------ DBMS_LOGMNR 权限 (版本为 10g 的数据库需要先执行:
  CREATE OR REPLACE PUBLIC SYNONYM dbms_logmnr FOR sys.dbms_logmnr)
  grant execute on DBMS_LOGMNR to eoa_user;
 ------ DBMS_METADATA 权限,查询数据对象 DDL 语句
  grant execute on dbms_metadata to eoa_user;
 ------ 查询事务权限
  grant select any transaction to eoa_user;
 ------ 查询表权限
  grant select any table to eoa_user;
 ------ 分析表权限
  grant analyze any to eoa_user;
 ------ 产生随机编号权限
  grant execute on dbms_random to eoa_user;
执行采集脚本进行画像采集
sh collect_12c.sh -h 192.168.123.123 -P 1521 -u eoa_user -p eoaPASSW0RD -d orcl -s orcl3

新建画像

2. 数据库评估

等画像分析完成,下一步查看查看目标库选型建议

新建数据库评估项目

启动数据库改造进行结构迁移,迁移失败的需要手工订正

点击订正,可以查看改造点,下图中删除PARALLEL 8即可在订正完成

结构迁移完成后进行对象的核对,无误后开始数据迁移


七. 创建迁移任务进行数据迁移

登陆DTShttp://192.168.123.123/

创建迁移任务

配置迁移任务

配置原库信息,测试通过后配置目标库信息

授权白名单并进去下一步

取消勾选结构迁移,选择需要迁移的对象,进行预检查并启动

首页可查看迁移进度

可以查看详细的任务信息

等待任务运行完成,稽核数据


END


更多精彩干货分享

点击下方名片关注

IT那活儿

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129829.html

相关文章

  • 云无边界,阿里云混合云数据同步发布

    摘要:摘要针对不同数据库间数据实时同步难的问题,日前,阿里云宣布推出混合云数据同步一站式解决方案,便于广大云产品用户实现实时数据同步的混合云支持,更为方便的是,该功能让本地也能实现与云上数据库的实时同步。 摘要: 针对不同数据库间数据实时同步难的问题,日前,阿里云宣布推出混合云数据同步一站式解决方案,便于广大云产品用户实现实时数据同步的混合云支持,更为方便的是,该功能让本地Oracle也能实...

    MASAILA 评论0 收藏0
  • 阿里云数据传输服务低价不低质,服务再升级

    摘要:摘要为了释放更多技术红利,进一步普惠广大客户和开发者,阿里云于月下旬宣布,数据传输服务将全面降价,并于当月生效。据了解,此次降价空间来自于阿里云多年的技术积累和规模化技术升级。 摘要: 为了释放更多技术红利,进一步普惠广大客户和开发者,阿里云于12月下旬宣布,数据传输服务(Data Transmission Service) DTS将全面降价,并于当月生效。 此次价格调整涉及多项服务和...

    VioletJack 评论0 收藏0
  • 达摩院首席数据库科学家李飞飞:云原生新战场,我们如何把握先机?

    摘要:李飞飞花名飞刀,阿里巴巴集团副总裁,高级研究员,达摩院首席数据库科学家,阿里云智能事业群数据库产品事业部负责人,杰出科学家。是阿里云的云原生数据库,目前已有非常深厚的技术积累。 阿里妹导读:云计算大潮来袭,传统数据库市场正面临重新洗牌的情境,包括云数据库在内的一批新生力量崛起,动摇了传统数据库的垄断地位,而由云厂商主导的云原生数据库则将这种改变推向了高潮。 云时代的数据库将面临怎样的...

    frolc 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<