博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
docker系列7: docker搭建mysql
阅读量:2110 次
发布时间:2019-04-29

本文共 2581 字,大约阅读时间需要 8 分钟。

docker安装三大数据库:oracle,sqlserver,mysql

#oracle_12c 服务docker run -d  -it --net=host --name oracle12c \ -v OracleDBData:/ORCL \ --restart=always  store/oracle/database-enterprise:12.2.0.1# 登陆oracle12c容器# docker exec -it oracle12c  bash -c "source /home/oracle/.bashrc; sqlplus /nolog"# SQL>    sqlplus sys/Oradoc_db1@ORCLCDB as sysdba#oracle_11g 服务#docker run -d  --net=host --name=oracle \-v oracle_app:/home/oracle/app/oracle/ \--restart=always registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g# 登陆oracle_11g 容器# docker exec -it oracle  bash -c "source /home/oracle/.bash_profile; sqlplus /nolog"# SQL>    sqlplus system/helowin@helowin  as sysdba#mysql 服务#docker run -d  --net=host --name=mysql -v mysql-date:/var/lib/mysql \ -v mysql-conf:/etc/mysql  -e MYSQL_ROOT_PASSWORD=123456  \ --restart=always   mysql:5.7#sqlserver 服务#docker run -d --net=host --name=mssql \  -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=AAAaaa123!' \  -v mssql_db:/var/opt/mssql \  --restart=always  microsoft/mssql-server-linux

在这里插入图片描述

使用场景: 在windows server 2012 服务器上使用docker-mysql服务, 由于docker windows使用的是virtualbox 虚拟机安装的容器, 所以使用docker run -p xx:xx 不能让外界直接访问,所以用到了nginx来反向代理,实现windows —> docker:mysql

1, 启动docker-mysql服务

  • mysql5.5
#使用端口转发:效率低 -p 3306:3306 #使用宿主机端口:效率高 --net=host  #--net=host docker run  -d  --name mysql \-p 3306:3306 \-v mysql-data:/var/lib/mysql  \-e MYSQL_ROOT_PASSWORD=123456  \--restart=always \mysql:5.5 --character-set-server=utf8
  • mysql5.7
docker run  -d  --name mysql_cdh \-p 3306:3306 \-v mysql-data:/var/lib/mysql  \-e MYSQL_ROOT_PASSWORD=123456  \--restart=always \mysql:5.7  --character-set-server=utf8#配置mysqldocker exec -it mysql_cdh bashcat  >>/etc/mysql/my.cnf <
  • mysql8
docker run  -d  --name mysql_cdh  \-p 3308:3306 \-v mysql-data:/var/lib/mysql  \-v mysql-conf:/etc/mysql \-e MYSQL_ROOT_PASSWORD=123456  \--restart=always \mysql:8.0.15 --character-set-server=utf8改localhost登陆密码: ALTER USER "root"@"localhost" IDENTIFIED  BY "123456";远程连接报错:Authentication plugin 'caching_sha2_password' cannot be loaded==== > 改远程登陆的密码:  ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';jdbc连接报错:java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long===>更换驱动: mysql-connector-java-5.1.21.jar包换成mysql-connector-java-8.0.11.jar

2, nginx.conf配置

添加如下配置 ,注意[stream] 要和[http]同级

stream {	upstream mysql{		hash $remote_addr consistent;		server 192.168.99.100:3306 max_fails=3 fail_timeout=30s;	}      	server {		listen 3306;		proxy_connect_timeout 3000s;		proxy_timeout 6000s;		proxy_pass mysql;										}    }#http{ #	............#}

转载地址:http://vtdef.baihongyu.com/

你可能感兴趣的文章
VLAN与子网划分区别
查看>>
Cisco Packet Tracer教程
查看>>
01. 开篇:组建小型局域网
查看>>
02. 交换机的基本配置和管理
查看>>
03. 交换机的Telnet远程登陆配置
查看>>
微信小程序-调用-腾讯视频-解决方案
查看>>
giuhub搭建及常用操作
查看>>
phpStudy安装yaf扩展
查看>>
密码 加密 加盐 常用操作记录
查看>>
TP 分页后,调用指定页。
查看>>
Oracle数据库中的(+)连接
查看>>
java-oracle中几十个实用的PL/SQL
查看>>
PLSQL常用方法汇总
查看>>
详细介绍Oracle sqlplus命令
查看>>
几个基本的 Sql Plus 命令 和 例子
查看>>
PLSQL单行函数和组函数详解
查看>>
Oracle PL/SQL语言初级教程之异常处理
查看>>
Oracle PL/SQL语言初级教程之游标
查看>>
Oracle PL/SQL语言初级教程之操作和控制语言
查看>>
Oracle PL/SQL语言初级教程之过程和函数
查看>>