docker 安装mysql、postgres、oracle及相关问题的解决方法
mysql
1.下载mysql镜像,以5.7版本为例,也可不指定版本默认下载最新的
指定版本命令:docker pull mysql:5.7 不指定版本命令:docker pull mysql
2.查看下载容器
docker images
3.启动和数据挂载,启动方式二选一
数据挂载并启动: docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data: /var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234 --name mysql01 mysql:5.7 注:/home/mysql/conf、/home/mysql/data 这个两个没有文件需要创建
不挂载启动: docker run -d -p 3310:3306 -e MYSQL_ROOT_PASSWORD=1234 --name mysql01 mysql:5.7
# 命令解析 --name mysql01 mysql:5.7 指定容器的名称,原始容器名称 -e POSTGRES_PASSWORD=postgres 设置环境变量,指定数据库的用户名和密码,用户名为postgres,密码为:postgres -p 3306:3306指定端口:前面为映射的端口号,后面为镜像的端口号 -v /home/mysql/data: /var/lib/mysql 指定宿主机的目录和原数据目录 -d postgres:12 指定镜像名称以及版本号
4.查看启动的镜像
docker ps docker ps -a 查看全部镜像
5.进入容器中,下图表示已进入容器中
docker exec -it cd312a957787 /bin/bash
cd312a957787 是4的镜像id
postgres
1.下载postgres镜像,以9.6版本为例,也可不指定版本默认下载最新的
指定版本命令:docker pull postgres:9.6 不指定版本命令:docker pull postgres
2.启动和数据挂载
docker run -d -p 54321:5432 -e POSTGRES_PASSWORD=1234 -v /home/data-volume/postgresql/data:/var/lib/postgresql/data --name postgres9.6 postgres:9.6
3.查看容器和进入容器和mysql类似
oracle
1.下载oracle镜像,不指定版本默认下载最新的
不指定版本命令:docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
2.创建挂载文件的文件夹
mkdir -p /home/oracle/data/
3.启动oracle并数据挂载
4.进入容器
5.进行软连接
sqlplus /nolog 发现没有该命令,所以切换root用户。 su root 输入密码:helowin
7.编辑profile文件配置ORACLE环境变量 vi /etc/profile ,在文件最后写上下面内容:
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 export ORACLE_SID=helowin export PATH=$ORACLE_HOME/bin:$PATH
8.保存后加载环境变量
source /etc/profile
9.创建软连接
ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
10.切换到oracle 用户
1.alter user system identified by system ;--修改system用户账号密码(有可能出现坑1); 2.alter user sys identified by sys ;--修改sys用户账号密码; 3.create user test identified by test; -- 创建内部管理员账号密码; 4.grant connect,resource,dba to test; --将dba权限授权给内部管理员账号和密码; 5.ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; --设置密码永不过期(有可能出现坑2): 6.alter system set processes=1000 scope=spfile; --修改数据库最大连接数据;
11.有可能出现坑的解决方法 10中的坑1 注意了:这里也许还会提示 : ORA-01507: database not mounted 解决办法:
输入:alter database mount; 输入 :alter database open;
10中的坑2 改完之后输入:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; 刷新下表 exit 是退休sql 软连接
12.客户端连接oracle
14 PLSQL+Developer 客户端 配置tnsnames.ora文件
localhost = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.87.128)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = helowin) ) )
下一篇:
SQL学习笔记——创建数据库和表