mutingliaoninli 2024-04-02 16:53 采纳率: 63.6%
浏览 44

各位Ubuntu系统用docker装的MySQL8.0如何重新初始化数据

各位Ubuntu系统用docker装的MySQL8.0如何重新初始化数据求远程感谢RMB

  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-04-02 16:53
    关注

    引自免费微信小程序:皆我百晓生

    非常抱歉给您带来了困扰,以下是关于在 Ubuntu 系统上重新初始化 MySQL 数据的详细步骤:

    1. 备份数据库

    确保您已经备份了您的数据库中的所有数据。如果您没有定期备份,请确保每天备份一次。

    • 在本地目录中创建一个名为 mysqldump 的文件。

    • 运行以下命令从 MySQL 主机复制所有数据到本地:

      sudo mysqldump -u [用户名] -p[数据库名] > mydb.sql
      
    1. 启动 Docker 并挂载 MySQL 镜像

    运行以下命令将 Docker 容器设置为从本地服务器启动,并将 MySQL 数据库镜像挂载到容器的 /var/lib/mysql 目录中:

    sudo docker run --name mysql-server -e MYSQL_ROOT_PASSWORD=[加密密码] -v /var/lib/mysql:/var/lib/mysql ubuntu:latest
    
    1. 配置 SSH 密码

    使用以下命令配置 SSH 密码以保护 MySQL 数据库:

    sudo apt-get update && \
     sudo apt-get install openssh-client
    
    # 指定 MySQL 用户及其权限
    sudo nano /etc/ssh/sshd_config
    添加以下行内容:
    

    修改用户相关参数

    User mysql Group mysql AllowUsers mysql root

    更改公钥对相关参数

    Host mysql IdentityFile ~/.ssh/id_rsa.pem

    
    4. **设置 SSH 端口**
    
    在防火墙中设置允许SSH连接到 3306端口(默认):
    
    

    sudo firewall-cmd --permanent --add-port=3306/tcp --permanent --add-port=3306/udp

    
    5. **重启服务**
    
    确保其他服务已正确启动后,重启 MySQL 服务以启用新的数据库:
    
    

    sudo systemctl restart mysql

    
    6. **登录并初始化数据库**
    
    打开终端,导航到 `/var/lib/mysql/` 目录,然后执行以下命令初始化数据库:
    
    

    sudo mysql_secure_installation

    
    7. **测试数据恢复**
    
    输入正确的密钥以访问 MySQL 数据库:
    
    

    mysql -u [用户名] -p

    
    输入您希望更改的新密码:
    
    

    sudo password new_password

    
    现在,您应该已经成功重新初始化了 MySQL 数据。祝您好运!
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月2日