docker 安装mysql
江湖规矩,有图为证,先上图
docker中的mysql
安装mysql
#康康docker启动没
[kuro@jiayeli ~]$ systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: active(running) since Wed 2021-12-22 21:58:06 CST; 1h 4min ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 3429 (dockerd)
Tasks: 78
Memory: 144.9M
CPU: 9.125s
CGroup: /system.slice/docker.service
active(running) 就算启动了
看看有mysql的镜像了没
[kuro@jiayeli ~]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest bbf6571db497 2 weeks ago 516MB
这个是刚刚装的, tag: latest就是最新版的
看看image仓库中可用的mysql
[kuro@jiayeli ~]$ docker search mysql
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 11848 [OK]
mariadb MariaDB Server is a high performing open sou… 4521 [OK]
mysql/mysql-server Optimized MySQL Server Docker images. Create… 888 [OK]
centos/mysql-57-centos7 MySQL 5.7 SQL database server 92
mysql/mysql-cluster Experimental MySQL Cluster Docker images. Cr… 90
centurylink/mysql Image containing mysql. Optimized to be link… 59 [OK]
databack/mysql-backup Back up mysql databases to... anywhere! 54
prom/mysqld-exporter 46 [OK]
deitch/mysql-backup REPLACED! Please use http://hub.docker.com/r… 41 [OK]
tutum/mysql Base docker image to run a MySQL database se… 35
linuxserver/mysql A Mysql container, brought to you by LinuxSe… 34
schickling/mysql-backup-s3 Backup MySQL to S3 (supports periodic backup… 31 [OK]
mysql/mysql-router MySQL Router provides transparent routing be… 23
centos/mysql-56-centos7 MySQL 5.6 SQL database server 21
arey/mysql-client Run a MySQL client from a docker container 20 [OK]
fradelg/mysql-cron-backup MySQL/MariaDB database backup using cron tas… 18 [OK]
genschsa/mysql-employees MySQL Employee Sample Database 9 [OK]
yloeffler/mysql-backup This image runs mysqldump to backup data usi… 7 [OK]
openshift/mysql-55-centos7 DEPRECATED: A Centos7 based MySQL v5.5 image… 6
devilbox/mysql Retagged MySQL, MariaDB and PerconaDB offici… 3
ansibleplaybookbundle/mysql-apb An APB which deploys RHSCL MySQL 3 [OK]
idoall/mysql MySQL is a widely used, open-source relation… 3 [OK]
centos/mysql-80-centos7 MySQL 8.0 SQL database server 2
jelastic/mysql An image of the MySQL database server mainta… 2
widdpim/mysql-client Dockerized MySQL Client (5.7) including Curl… 1 [OK]
如果有镜像了直接启动,没有会自动拉取,然后启动
[kuro@jiayeli ~]$ docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=你的密码 -d mysql
-p: 将docker中的地址maping到本地,如果本地端口3306被占用了就换一个,不要那么执着端口冲突了启动不起来
-e: 初始化用户密码
-d: 以守护进程运行,即放后台运行,不然会。
进入docker,进行mysql的一些配置
[kuro@jiayeli ~]$ docker exec -it mysql /bin/bash
root@a7f7b93d4d52:/#
docker exec -it mysql /bin/bash
使用/bin/bash 以交互模式进入mysql-test 这个docker内
-i:提供一个接口
-t: 带终端
使用设置的密码进入mysql,设置用户host为允许别的机器地址访问,刷新权限
一般到这就结束了,但我的还是从本地机器连不上docker内mysql,一顿拾腾发现,还需要重新更新一下msyql的用户host才行;如下:
root@a7f7b93d4d52:/# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 41
Server version: 8.0.27 MySQL Community Server - GPL
# 修改root用户密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码'
# 添加用户并设置所有ip都能访问
mysql> CREATE USER '你用创建的用户'@'%' IDENTIFIED WITH mysql_native_password BY '你要设置的密码';
mysql> GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%';
mysql> flush privileges;
#看看用户对应的host设置,% 表示所有都可以连
mysql> select host, user, authentication_string, plugin from mysql.user;
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| host | user | authentication_string | plugin |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| % | kuro | *4D420924005402A65B2286393CAD28DFE23D914E | mysql_native_password |
| % | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password |
| localhost | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.session | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.sys | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | root | $A$005$pmt/&wj4h
�!m^yWlJDZ1VlRW/Przd33Gjn3SEGUHJRHRLQr35VfW5mE74 | caching_sha2_password |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
update host
mysql> update 用户 set host='%' where user='用户';
```sql
接下来是事情就像刚刚开始的那样,在本地拿dbeaver连,一连就连上了 hhhhhhh...
版权声明:本文为weixin_46661903原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。