首頁  >  文章  >  資料庫  >  Docker容器怎麼遷移Oracle到MySQL

Docker容器怎麼遷移Oracle到MySQL

王林
王林轉載
2023-05-28 18:31:541337瀏覽

⛳️ 1. 建立專用網路

docker network create --subnet=168.66.6.0/24 db-network
[root@docker ~]# docker network inspect db-network --查看网络信息

Docker容器怎麼遷移Oracle到MySQL

#⛳️ 2. Oracle 12C部署

Docker容器怎麼遷移Oracle到MySQL

##✨ 2.2 容器建立

docker pull registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora12c_12201

Docker容器怎麼遷移Oracle到MySQL

✨ 2.3 建立業務使用者

docker run -itd --name jemora1221 -h jemora1221
–net=db-network --ip 168.66.6.34
-p 1526:1521 -p 3396:3389
–privileged=true
registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora12c_12201 init

✨ 2.4 監聽啟動

[root@jeames ~]# docker exec -it jemora1221 bash
[root@jemora1221 /]# su - oracle
[oracle@jemora1221 ~]$ sqlplus / as sysdba
SYS@jem> startup
SYS@jem> show pdbs
    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 JEMPDB                         MOUNTED
alter pluggable database JEMPDB open;
SYS@jem> select con_id,dbid,NAME,OPEN_MODE from v$pdbs;
SYS@jem> alter session set container=JEMPDB;
SYS@jem> create user jemmes identified by jemmes
SYS@jem> GRANT DBA to jemmes ;

Docker容器怎麼遷移Oracle到MySQL

⛳️ 3. MySQL8部署

✨ 3.1 容器建立

[oracle@jemora1221 ~]$ cd $ORACLE_HOME/network
[oracle@jemora1221 network]$ cd admin

## 配置TNS,后续连接数据库
[oracle@jemora1221 admin]$ vi tnsnames.ora
JEMPDB =
 (DESCRIPTION =
 (ADDRESS = (PROTOCOL = TCP)(HOST = jemora1221)(PORT = 1521))
 (CONNECT_DATA =
 (SERVER = DEDICATED)
 (SERVICE_NAME = JEMPDB)
 )
 )
 
 ## 监听启动
lsnrctl start
lsnrctl status

查看容器

docker run -d --name mysql8027 -h mysql8027 -p 3418:3306
–net=db-network --ip 168.66.6.35
-v /etc/mysql/mysql8027/conf:/etc/mysql/conf.d
-e MYSQL_ROOT_PASSWORD=jeames -e TZ=Asia/Shanghai
mysql:8.0.27

Docker容器怎麼遷移Oracle到MySQL

#✨ 3.2 參數設定

[root@jeames ~]# docker ps --format “table {<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E-->{.ID}}\t{<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E-->{.Names}}\t{<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E-->{.Status}}”
CONTAINER ID NAMES STATUS
043d1652404d jemora1221 Up 7 minutes
dc2989508b67 mysql8027 Up 23 seconds
7e6a53d71017 centos7.8 Up 20 minutes

✨ 3.3 登陸MySQL

cat > /etc/mysql/mysql8027/conf/my.cnf << “EOF”
[mysqld]
default-time-zone = ‘+8:00&#39;
log_timestamps = SYSTEM
skip-name-resolve
log-bin
server_id=80273418
character_set_server=utf8mb4
default_authentication_plugin=mysql_native_password
EOF

Docker容器怎麼遷移Oracle到MySQL##⛳️ 4. kettle遷移Oracle到MySQL

#✨4.1 部署kettle

#Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運行.
Kettle 中文名稱叫水壺,該專案的主程式設計師MATT 希望把各種數據放到一個壺裡,然後以一種指定的格式流出。 Kettle這個ETL工具集,它允許你管理來自不同資料庫的數據,透過提供一個圖形化的使用者環境來描述你想做什麼,而不是你想怎麼做。 Kettle中有兩種腳本文件,transformation和job,transformation完成針對資料的基礎轉換,job則完成整個工作流程的控制。


kettle的組成

Docker容器怎麼遷移Oracle到MySQL

。整個流程一共分為兩個步驟:一是安裝JAVA環境;二是下載kettle的安裝套件

安裝AVA JDK

下載jdk安裝套件後開啟檔案開始安裝

Docker容器怎麼遷移Oracle到MySQL

Docker容器怎麼遷移Oracle到MySQL







Docker容器怎麼遷移Oracle到MySQL

#加入以下3個變數

【1】JAVA_HOME:剛剛Java安裝的路徑,我的是:C:\Program Files\Java\jdk1.8.0_231Docker容器怎麼遷移Oracle到MySQL【2】CLASSPATH:.; %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

【3】配置環境變數Path

雙擊Path,新增「%JAVA_HOME%\bin」;新增「%JAVA_HOME% \jre\bin」。

Win R鍵彈出運行窗口,輸入cmd,回車運行

分別輸入“java -version”,“javac”進行測試,顯示以下內容說明配置成功Docker容器怎麼遷移Oracle到MySQL

Docker容器怎麼遷移Oracle到MySQL

下載kettle安裝套件

這裡我們選擇7.1版本




#下載完成解壓縮到任何路徑,開啟資料夾,找到Spoon .bat,建立桌面快捷方式,開啟

Docker容器怎麼遷移Oracle到MySQL


#資料庫驅動程式包下載

將mysql驅動程式和oracle驅動放在kettle包下面的lib包下面即可。 Docker容器怎麼遷移Oracle到MySQLMySQL JDBC 驅動程式下載

檔案後綴名為 .tar.gz 的是Linux/IOS的壓縮包;後綴為 .zip 的是Windows下的壓縮包,

根據系統選擇下載。

下載這個版本即可:mysql-connector-java-5.1.49-bin.jar

Oracle JDBC 驅動下載Docker容器怎麼遷移Oracle到MySQL

資料庫連線Docker容器怎麼遷移Oracle到MySQL

A.建立轉換

在檔案->新裝換,新建轉換後在左邊的主物件樹中建立DB連線用以連接資料庫

Docker容器怎麼遷移Oracle到MySQL

B.資料庫連線MySQL

######C.資料庫連線Oracle 12C##############✨4.2 Oracle端資料校驗## #
mysql -uroot -pjeames -h 168.66.6.35
create database jemdb;
############✨4.3 遷移Oracle到MySQL######複製多表###

Docker容器怎麼遷移Oracle到MySQL

Docker容器怎麼遷移Oracle到MySQL

Docker容器怎麼遷移Oracle到MySQL

Docker容器怎麼遷移Oracle到MySQL

#完成後,會自動產生如下的執行樹:

Docker容器怎麼遷移Oracle到MySQL

點選run,開始執行即可:

Docker容器怎麼遷移Oracle到MySQL

Docker容器怎麼遷移Oracle到MySQL

Docker容器怎麼遷移Oracle到MySQL

#✨4.4 遷移後MySQL資料驗證

Docker容器怎麼遷移Oracle到MySQL

以上是Docker容器怎麼遷移Oracle到MySQL的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除