Docker安装MySQL及phpMyAdmin

Docker安装MySQL及phpMyAdmin

安装MySQL

Docker命令如下:

sudo docker run --privileged --restart=always  --name mysql5 \
        -p 3306:3306 \
        -v /root/docker/mysql/cnf:/etc/mysql/conf.d  \
        -v /root/docker/mysql/log:/var/log/mysql  \
        -v /root/docker/mysql/data:/var/lib/mysql  \
        -e MYSQL_ROOT_PASSWORD=root123 -d mysql:5.7

--privileged 给容器加权限
--restart=always 配置容器开机自启动
-e MYSQL_ROOT_PASSWORD 配置数据库密码,默认用户名为root
MySQL的conf文件,如果使用默认的,可不映射

开启MySQL远程连接

进入docker容器中的MySQL
# 查看docker中运行的容器
docker ps

# 进入某容器
docker exec -it {容器id} /bin/bash

# 进入mysql
mysql -uroot -p

配置权限
为老用户授权
use mysql;

# 授权
GRANT ALL PRIVILEGES ON *.* TO 'jira'@'%' IDENTIFIED BY 'jira12345'

# 刷新权限:
FLUSH PRIVILEGES;

授权命令格式:
grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密码"
说明:
上例中,*.*代表所有数据库权限
@后面是访问MySQL的客户端IP地址或主机名
----> % 表示任意的客户端
----> localhost 表示本地访问

修改数据表
use mysql;
update user set host = '%' where user = 'jira';
创建新用户

查看用户

use mysql;
select host,user,password from user;

创建用户

# 创建新用户
CREATE USER 'jira'@'%' IDENTIFIED BY 'jira123456';

修改密码

# 修改用户密码
SET PASSWORD FOR 'jira'@'%' = PASSWORD('jira123456'); 

Docker安装MySQL的Web管理工具phpMyAdmin

可以通过docker search 查找phpmyadmin的镜像,并pull到本地。

docker run -it --name phpmyadmin77 -e MYSQL_USERNAME=root --link mysql5:db -p 8000:80 -d phpmyadmin/phpmyadmin 

# OR 
# docker run --name myphpmyadmin -d --link mysql5:db -p 8000:80 phpmyadmin/phpmyadmin

其中:mysql5是docker中mysql容器的名字

启动MySQL失败问题

mysqld: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 13 - Permission denied)
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!

ERROR: mysqld failed while attempting to check config
command was: "mysqld --verbose --help"

原因

因为Centos7安全Selinux禁止了一些安全权限,导致mysql在进行挂载/var/lib/mysql的时候会提示上面的信息。

解决方法

在docker run中加入 --privileged 给容器加上特定权限

sudo docker run --privileged --name mysql5 \
        -p 3306:3306 \
        -v /root/docker/mysql/cnf:/etc/mysql/conf.d  \
        -v /root/docker/mysql/log:/var/log/mysql  \
        -v /root/docker/mysql/data:/var/lib/mysql  \
        -e MYSQL_ROOT_PASSWORD=root -d mysql:5.6
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Docker安装MySQLphpMyAdmin作为管理工具,您可以按照以下步骤进行操作: 1. 首先,根据官方文档中的说明,使用Docker运行MySQL容器。您可以使用以下命令: ``` docker run --name mysql_rdb -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:5.7.42 ``` 这将创建并运行一个名为"mysql_rdb"的MySQL容器,并将它映射到本地的3306端口。 2. 接下来,您可以使用以下命令在Docker容器内连接到MySQL数据库: ``` docker run -it --rm mysql mysql -h <MySQL容器的IP地址> -u root -p ``` 请将"<MySQL容器的IP地址>"替换为实际的MySQL容器的IP地址。这将打开一个交互式的MySQL终端,并要求您输入MySQL的root密码。 3. 最后,您可以使用Docker-compose来部署MySQLphpMyAdmin。编写一个docker-compose.yml文件,并在其中指定MySQLphpMyAdmin的服务。然后使用以下命令运行Docker-compose: ``` docker-compose up -d ``` 这将根据docker-compose.yml文件中的配置启动MySQLphpMyAdmin服务。 总结起来,要在Docker安装MySQLphpMyAdmin作为管理工具,您可以按照以下步骤进行操作:首先运行MySQL容器,然后使用命令连接到MySQL数据库,最后可以使用Docker-compose来部署MySQLphpMyAdmin。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Docker部署MySQL及管理工具phpmyadmin](https://blog.csdn.net/yudaxiaye/article/details/131713133)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [docker安装mysqlphpmyadmin](https://blog.csdn.net/MoLi_516/article/details/110299260)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值