docker怎样安装mysql8(docker-compose安装db2数据库操作)
docker怎样安装mysql8
docker-compose安装db2数据库操作db2数据库在宿主机直接安装比较麻烦,而且涉及用户和权限也不方便,所以采用docker安装db2数据库,这样做的好处是便于数据库的管理和网络隔离,网上一般都是docker直接run的这种不便于后期修改,我们依然采用docker-compose文件来安装db2数据库。
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 数据库
以上这篇docker-compose安装db2数据库操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。
- docker-compose 开发代码(Docker Compose多容器部署的实现)
- dockerfile构建mysql镜像并初始化(docker-compose基于MySQL8部署项目的实现)
- docker-compose启动单个容器(docker-compose快速搭建docker私有仓库的步骤)
- docker-compose怎么编写(docker-compose部署php项目实例详解)
- docker-compose部署实例(详解docker-compose速度太慢解决方式)
- docker-compose配置文件(Docker Compose在不同环境的多种安装方式)
- docker-compose项目部署(使用Docker Compose部快速署ELK亲测有效)
- dockerspringboot一键部署(docker-compose镜像发布springboot项目的流程分析)
- docker容器编排入门教程(laradock环境docker-compose操作详解)
- docker-compose命令(docker-compose教程之安装使用和快速入门)
- docker compose的常用命令(安装docker和docker-compose实例详解)
- docker-compose绑定端口失效(docker-compose创建网桥,添加子网,删除网卡的实现)
- dockercompose的常用命令的作用(PIP安装docker-compose超时问题解决方案)
- docker compose使用方法(docker和docker-compose一键安装教程支持在线和离线)
- docker-compose查看服务状态(Docker+DockerCompose封装web应用的方法步骤)
- docker怎样安装mysql8(docker-compose安装db2数据库操作)
- 新晋小花被称女版吴卓羲 将取代滕丽名成为TVB新一代御用女警(新晋小花被称女版吴卓羲)
- 艺人吴卓羲10年警察生涯,演足10年阿Sir,系咩玩法(艺人吴卓羲10年警察生涯)
- 菲律宾潜水(菲律宾潜水价格)
- 泰国人妖(变性手术生殖器要割掉吗)
- 泰国美女(泰国人妖和女性如何区分)
- 泰国旅游业怎么样(泰国的旅游产业)
热门推荐
- python函数操作大全(Python的高阶函数用法实例分析)
- 用ILMerge合并多个DLL
- 云服务器和普通服务器有什么区别(云服务器是什么?云服务器是如何工作的?)
- IIS7支持html中<!--#include --> 包含文件的方法
- vuex原理及使用方法(Vuex状态机的快速了解与实例应用)
- docker-compose启动超时(docker compose idea CreateProcess error=2 系统找不到指定的文件的问题)
- nginx 配置强制跳转https(Nginx实现https网站配置代码实例)
- 媲美serv-u开源ftp(个人FTP建站域名解析serv-u常见问题解决方法之完全解决方案)
- python带权限复制文件夹(python定时复制远程文件夹中所有文件)
- ftp服务器登录错误(登陆FTP服务器提示530 Login authentication failed 错误的解决方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9