返回

安装Mariadb时,有踩过的坑吗?

后端

一、使用docker-compose启动

1、数据库配置文件

新建mysql/my.cnf文件,作为mysql的配置文件:

[mysql]
user=root
password=mypassword
database=test

将my.cnf文件复制到mysql容器中:

docker cp my.cnf mysql:/etc/mysql/

2、Docker-compose.yml文件

version: '3.7'

services:
  mysql:
    image: mysql:5.7
    container_name: mysql
    volumes:
      - ./mysql/my.cnf:/etc/mysql/my.cnf
    environment:
      - MYSQL_ROOT_PASSWORD=mypassword
    ports:
      - "3306:3306"

启动服务:

docker-compose up -d

二、直接使用docker命令启动

1、挂载数据目录

docker run -d --name some-mysql -e MYSQL_ROOT_PASSWORD=mypassword -v /path/to/datadir:/var/lib/mysql -p 3306:3306 mysql:5.7

2、修改时区

docker exec -it some-mysql mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql

三、常见问题

1、数据库连接不上

检查数据库是否启动:

docker ps -a

如果数据库未启动,可以使用以下命令启动:

docker start mysql

2、数据库密码错误

检查数据库密码是否正确。如果密码不正确,可以使用以下命令修改密码:

docker exec -it mysql mysql -u root -p

然后使用以下命令修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new-password';

3、数据库端口映射错误

检查数据库端口是否映射正确。如果端口映射错误,可以使用以下命令修改端口映射:

docker run -d --name some-mysql -e MYSQL_ROOT_PASSWORD=mypassword -v /path/to/datadir:/var/lib/mysql -p 3306:3306 mysql:5.7

4、数据库数据丢失

如果数据库数据丢失,可以使用以下命令恢复数据:

docker exec -it mysql mysql -u root -p

然后使用以下命令恢复数据:

source /var/lib/mysql/ib_backup/ibdata1

结语

以上就是使用Docker安装Mariadb时可能会遇到的常见问题。如果你遇到这些问题,可以参考本文提供的解决方案。