使用docker-compose安装mysql

创建docker-compose.yml

version: '3'
services:
    mysql:
        image: mysql
        restart: always
        container_name: mysql
        environment:
            MYSQL_ROOT_PASSWORD: pass@123!(此处是数据库root用户密码,可自行修改)
        command:
            --default-authentication-plugin=mysql_native_password
            --character-set-server=utf8mb4
            --collation-server=utf8mb4_general_ci
            --explicit_defaults_for_timestamp=true
            --lower_case_table_names=1
            --max_allowed_packet=128M;
        ports:
            - 3306:3306
        volumes:
            - ./data:/var/lib/mysql

开放3306端口

如果使用navicat登录失败

docker ps -a

 

docker exec -it f5d861a2e77a bash(f5d861a2e77a为mysql的CONTAINEr ID)

登录mysql

mysql -uroot -p

输入密码后执行下面命令

use mysql

select host, user, authentication_string, plugin from user;

 

如果root用户的host不是%则进行下面命令,如果是则跳过

update user set host '%' where user 'root';

flush privileges;

授权

GRANT ALL ON *.* TO 'root'@'%';

flush privileges;

posted @ 2021-09-07 18:06  孤城丶闭  阅读(1069)  评论(0编辑  收藏  举报