您好,登錄后才能下訂單哦!
本篇文章為大家展示了db2數據庫如何在docker-compose中安裝,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
1、編寫docker-compose文件,會自動下載數據庫鏡像
此文件自己創建一個文件夾放就可以了
version: "2.2" services: db2: image: ibmcom/db2 container_name: db211.5 privileged: true environment: LICENSE: accept DB2INST1_PASSWORD: 你的密碼 DBNAME: TESTDB volumes: - ./db2data:/database ports: - 50000:50000
2、查看安裝日志等待db2初始化完成,可能需要幾分鐘
#執行docker-compose開始安裝 docker-compose up -d #查看安裝日志 docker-compose logs #差不多到創建完TESTDB的時候就安裝好了
3、進入db2數據庫容器創建自己的數據庫
#進入容器 docker exec -it db211.5 bash #切換到db2inst1用戶 su db2inst1 #查看有沒有我們的TESTDB數據庫 db2 list db directory
4、創建一個用戶并賦予權限
其他的權限可網上看看,這里簡單弄一個連接和增刪改查權限
#創建用戶組 groupadd db2group #添加用戶到該組 useradd -m -g db2group -d /home/test test #修改test密碼 passwd test #連續輸入兩次密碼 #切換到db2inst1用戶下給test賦予連接權限 su db2inst1 #連接數據庫 db2 connect to testdb #賦予連接權限 db2 grant connect on database to user test #賦予增刪改查權限 db2 grant DATAACCESS on database to user test #關閉連接 db2 connect reset #其他常用命令 #創建數據庫 db2 create db TEST using codeset utf-8 territory CN #查看當前所有數據庫 db2 list db direcotry #查看庫中的表名 db2 list tables #更多命令省略
5、db2導出導入操作命令
#db2導出命令(會出現很多文件,將這些文件都打包) db2move <your databases> export #db2導入命令 (將打包后的文件復制到你要導入的服務器上面,然后在該文件夾目錄執行以下命令) db2move <your databases> import #如果出現權限問題,用root用戶賦予文件夾的可寫權限,因為導入命令會創建一個import.out文件
至此,docker對于db2的安裝就完成了,用docker容器的好處就是可以服務器之間的無縫遷移,將來像往其他服務器遷移數據庫也就很方便了。
補充知識:docker 安裝db2并掛載至本地
1.查找所有的db2鏡像
docker pull ibmcom/db2
2.拉取鏡像
我這里使用的最新版本的鏡像,如果不需要最新的,可以依據自己情況去指定版本。方式:docker pull db2:11.5.4.0
docker pull ibmcom/db2
3.啟動容器并掛載
docker run -d -p 50001:50000 --name db2_50001 --privileged=true -e DB2INST1_PASSWORD=123456 -e DBNAME=testdb -e LICENSE=accept -v /data/tadopDataProject/db2/50001:/database ibmcom/db2
參數說明:
-d: 表示在后臺啟動容器;
-p 50001:50000: 容器內部的 50000 端口映射主機的 50000 端口;
--name db2_50001:將容器命名為 db2_50001
--privileged=true:使得容器內的 root 擁有真正的 root 權限。
-e DB2INST1_PASSWORD=123456:設置內置實例用戶 db2inst1 的密碼為 123456
-e DBNAME=testdb:容器啟動時自動創建一個名為 testdb 的數據庫,如果不指定該參數則不創建數據庫
-e LICENSE=accept:接受協議
-v /data/tadopDataProject/db2/50001:/database:掛載目錄,其中/data/tadopDataProject/db2/50001 是宿主機的目錄
4.查看是否啟動成功
docker ps
netstat -anp |grep 50001
5.進入容器執行db2命令
docker exec -it db2_50001 bash
執行如下命令切換到實例用戶 db2inst1:
注意:一定要寫中間的那個橫條(-)。
su - db2inst1
查看運行狀態:
db2pd -
查看數據庫和補丁版本:
db2level
查看已經創建的數據庫:
db2 list db directory
執行命令連接 testdb 數據庫:
db2 connect to testdb
創建一個名為 TEST 的表:
注意:db2 命令后面的sql語句需要用引號括起來,否中會報 -bash: syntax error near unexpected token `(' 錯誤。
db2 "create table TEST(ID BIGINT NOT NULL GENERATED BY DEFAULT AS IDENTITY (START WITH 1,INCREMENT BY 1),USER_NAME VARCHAR(20),USER_AGES INT)"
查看所以用戶表:
db2 list tables
我們還可以執行如下命令再創建一個 SAMPLE 數據庫(樣例數據庫):
db2sampl
再次執行 db2 list dbdirectory 命令查看是否創建成功
最后執行 exit 即可退出容器,返回到宿主機。
鏈接 testdb 數據庫
上述內容就是db2數據庫如何在docker-compose中安裝,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。