使用docker-compose配置mysql数据库并且配置用户密码
linux找到你要放mysql的目录 创建一个docker-compose.yml以下配置了外部数据卷、外部配置文件、外部初始化文件(文件名必须以.sh或者.sql结尾)这样配置之后,数据库本地直接连接得上去,而且使用的是你配置的账号密码。version: '3'services:db:image: 'mysql/mysql-server:5.7'restar...
下面要求环境:一定要安装docker-ce和docker-compose才能进行下面步骤
linux找到你要放mysql的目录 创建一个docker-compose.yml
以下配置了外部数据卷、外部配置文件、外部初始化文件(文件名必须以.sh或者.sql结尾)
这样配置之后,数据库本地直接连接得上去,而且使用的是你配置的账号密码。
version: '3'
services:
db:
image: 'mysql/mysql-server:5.7'
restart: always
container_name: mysql
volumes:
- /u01/data:/var/lib/mysql
- ./mysql/config/my.cnf:/etc/my.cnf
- ./mysql/init:/docker-entrypoint-initdb.d/
ports:
- '3306:3306'
volumes:
data:
driver: local
#/u01/data可以改成你需要存放mysql的目录
然后在本目录创建/mysql/config/my.cnf
填写数据库的格式utf-8
[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
然后在创建你要在容器mysql你要创建的用户和密码,然后授予所有权限,创建这个文件/mysql/init/init.sql
CREATE USER 'luna'@'%' IDENTIFIED BY 'pwdluna';
GRANT All privileges ON *.* TO 'luna'@'%';
#luna是用户,pwdluna是密码
第二步是授权,一定要和你创建的用户相对应,给他所有权限
最后一步:创建
docker-compose up -d
在后台执行,创建容器mysql
然后我们进入数据库
docker ps
查看容器mysql的id,我这里的id是2e067484c148
进入docker exec -it 2e067484c148 /bin/bash
然后进入数据库
mysql -uphoebus -p123456
这里是你/mysql/init/init.sql设置的用户和密码
然后你会发现你的数据库连接上了
使用第三方连接使用你暴露的ip和端口号连接
更多推荐
所有评论(0)