安装mysql

docker run\
# -p 是本地端口映射该容器内部的端口
# 如果本地端口想用其他端口映射 可以改为-p3307:3306
-p3306:3306\
# --name 把该容器命名为mysql
--name mysql\
# -v 将mysql的存储文件指定挂载目录
-v $PWD/mysql/conf:/etc/mysql/conf.d\
-v $PWD/mysql/logs:/logs\
-v $PWD/mysql/data:/var/lib/mysql\
# 设置mysql的密码
-e MYSQL_ROOT_PASSWORD='1234'\
# -d 是指后台模式启动 最后是指定mysql的版本 默认latest 最新
# 若要指定其他版本则 mysql:xxx
-d mysql`

如果docker没有安装mysql镜像 执行后会自动拉取镜像
运行 docker start mysql
停止 docker stop mysql
在本地终端运行mysql mysql -h127.0.0.1 -uroot -p(需要安装mysql-client)

安装官方自带employees测试库

官方介绍 Employees Sample Database

表名 中文
department 部门表
dept_emp 部门员工任职期表(按部门&时期)
dept_manager 部门经理任职期表(按时期)
employees 员工详情表
salaries 员工薪资表(按时期)
title 员工职称表(按时期)

下载地址 https://github.com/datacharmer/test_db
如果下载速度太慢 推荐使用githubd来下载
进入test_db目录 cd test_db
导入 mysql -h127.0.0.1 -uroot -p < employees.sql
验证 mysql -h127.0.0.1 -uroot -p < test_employees_md5.sql

远程访问mysql

参考在阿里云上使用Docker安装MySQL并开放给外网访问

进入该容器 docker exec -it demo-mysql bash
进入mysql mysql -uroot -p
修改权限

use mysql;
grant all PRIVILEGES on *.* to root@'%' WITH GRANT OPTION;
# yourpassword改成自己设置的密码
ALTER user 'root'@'%' IDENTIFIED BY 'yourpassword' PASSWORD EXPIRE NEVER;
ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
FLUSH PRIVILEGES;

在本地服访问服务器的数据库 mysql -h[ip地址] -uroot -p
例如mysql -h127.0.0.1 -uroot -p

IDEA连接数据库

单击Database->+->Data Soure->MySQL 输入以下内容 并单击Test Connection验证是否连接成功