Sign inSign up

jellyfina/mysql

By jellyfina

•Updated almost 2 years ago

使用方法看介绍,软件版本: alpine:3.20.3 MySQL(MariaDB):10.11.10-r0

Image
0

973

jellyfina/mysql repository overview

⁠部署容器

以下命令将数据库root用户密码设置为aa23456并新建一个testdb的数据库,新建一个testuser的用户并设置密码为aa123456

docker run -it --name mysql --restart=always -p 3306:3306 -e MYSQL_ROOT_PASSWORD=aa23456 -e MYSQL_DATABASE=testdb -e MYSQL_USER=testuser -e MYSQL_PASSWORD=aa123456 -v /root/mysql:/var/lib/mysql jellyfina/mysql
⁠docker-compose.yml
version: '3.3'

services:
  mysql:
    image: mysql
    container_name: mysql
    environment:
      MYSQL_ROOT_PASSWORD: aa23456
      MYSQL_DATABASE: testdb
      MYSQL_USER: testuser
      MYSQL_PASSWORD: aa123456
    ports:
      - "3306:3306"
    volumes:
      - /root/mysql:/var/lib/mysql
    network_mode: bridge

volumes: 
  mysql_data:
⁠进入容器
docker exec -it mysql sh
⁠设置管理员 root 密码为 123456
mysqladmin -u root password "aa23456"
⁠登录mysql,密码是上面设置的 123456
mysql -h localhost -u root -p
⁠新建用户,以用户 newuser 与密码 password 为例
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
⁠新建数据库,以 test1 为例,
CREATE DATABASE test1;
⁠设置访问数据库权限(容器内部访问),仅有test数据库访问权限
GRANT ALL PRIVILEGES ON test.* TO 'newuser'@'localhost';
⁠设置访问数据库权限(容器外部部访问),仅有test数据库访问权限
GRANT ALL PRIVILEGES ON test.* TO 'newuser'@'%' IDENTIFIED BY 'password';
⁠开启管理员远程访问权限,强烈不推荐,如确需远程访问建议将 '%' 改成内部网络地址
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'aa23456';
⁠载入配置
FLUSH PRIVILEGES;
⁠备份数据库
mysqldump -u root -p test > test_backup.sql
⁠恢复数据库
mysql -u root -p test < test_backup.sql

Tag summary

Content type

Image

Digest

sha256:e2fbb078d…

Size

74.9 MB

Last updated

almost 2 years ago

docker pull jellyfina/mysql