自学内容网 自学内容网

本地用docker装mysql

拉取镜像

docker pull mysql
查看镜像
docker image ls

REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
mysql        latest    50296fefa2a2   3 months ago   625MB

启动容器

docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=yourpassword -d -p 3306:3306 mysql

docker run 创建并启动一个新的容器。
--name mysql-container 为容器指定一个名称。
-e MYSQL_ROOT_PASSWORD=yourpassword 用于设置 root 用户的密码,yourpassword替换成自己的密码
-d 容器会在后台运行,不会占用当前终端。关闭终端容器不会停止
-p 3306:3306 映射容器端口到主机端口,第一个 3306 是主机的端口号,第二个 3306 是容器内部的 MySQL 服务端口号
mysql 指定要使用的 Docker 镜像

查看运行中的容器
docker ps -a


CONTAINER ID   IMAGE     COMMAND                   CREATED              STATUS              PORTS                               NAMES
d26e607703b8   mysql     "docker-entrypoint.s…"   About a minute ago   Up About a minute   0.0.0.0:3306->3306/tcp, 33060/tcp   mysql-container
连接到 MySQL 容器
docker exec -it mysql-container mysql -u root -p 
其他一些操作
如果容器内安装了 bash 或 sh,可以使用以下命令,进入容器交互界面
docker exec -it mysql-container bash
docker exec -it mysql-container sh
退出交互界面,不影响容器继续运行,因为前面执行run命令用了-d
exit

停止
docker stop mysql-container

启动
docker start mysql-container

重启
docker restart mysql-container

销毁
docker rm mysql-container

装WorkBench链接mysql

基本使用

——————————————

允许远程登录MySql

如果不是本地数据库

运行以下 SQL 命令,允许 root 用户从任意主机连接:

CREATE USER 'root'@'%' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
允许 root 用户从 IP 地址(假设) 192.168.1.100 连接,

CREATE USER 'root'@'192.168.1.100' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON mydatabase.* TO 'root'@'192.168.1.100' WITH GRANT OPTION;
FLUSH PRIVILEGES;
检查防火墙规则:
sudo ufw status
允许 3306 端口:
sudo ufw allow 3306

原文地址:https://blog.csdn.net/rf344541393/article/details/145124872

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!