Ubuntu MySQL如何升级与迁移

241
2025/3/8 9:32:16
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Ubuntu上升级和迁移MySQL数据库是一个相对复杂的过程,需要仔细操作以确保数据的安全和完整性。以下是详细的步骤:

升级MySQL版本

  1. 备份数据库:在进行任何升级操作之前,强烈建议先备份所有数据库数据。

    mysqldump -u root -p --all-databases > full_backup.sql
    
  2. 添加MySQL官方APT源(如果需要):

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5072E1F5 3
    sudo sh -c 'echo "deb http://repo.mysql.com/apt/ubuntu/ $(lsb_release -sc) mysql-8.0" /etc/apt/sources.list.d/mysql.list'
    
  3. 更新软件包列表

    sudo apt-get update
    
  4. 安装新版本的MySQL

    sudo apt-get install mysql-server
    
  5. 升级已安装的MySQL软件包

    sudo apt-get upgrade mysql-server
    
  6. 重启MySQL服务

    sudo systemctl restart mysql
    
  7. 检查MySQL版本

    mysql --version
    

迁移MySQL数据库文件

  1. 停止MySQL服务

    sudo systemctl stop mysql
    
  2. 确定当前MySQL数据目录

    mysql -u root -p -e "SHOW VARIABLES LIKE 'datadir';"
    
  3. 创建新的数据目录(例如,在/mnt/data下):

    sudo mkdir /mnt/data/mysql
    
  4. 迁移数据库文件

    • 使用mv命令(推荐):
      sudo mv /var/lib/mysql/* /mnt/data/mysql/
      
    • 或者使用cp命令(更安全):
      sudo cp -a /var/lib/mysql/* /mnt/data/mysql/
      
  5. 修改MySQL配置文件/etc/mysql/my.cnf/etc/my.cnf):

    sudo nano /etc/mysql/my.cnf
    

    修改[mysqld]标签下的datadir属性值为新目录路径:

    [mysqld]
    datadir=/mnt/data/mysql
    
  6. 修改Apparmor配置文件

    sudo nano /etc/apparmor.d/usr.sbin.mysqld
    

    添加新路径的权限声明:

    /mnt/data/mysql/ r,
    /mnt/data/mysql/** rwk,
    
  7. 重新加载Apparmor配置

    sudo systemctl reload apparmor
    
  8. 启动MySQL服务

    sudo systemctl start mysql
    
  9. 验证迁移

    mysql -u root -p -e "SHOW DATABASES;"
    

注意事项

  • 在进行任何操作之前,请确保已经备份了所有重要数据。
  • 修改配置文件时要小心,确保路径和权限设置正确。
  • 重新加载Apparmor配置后,可能需要重新启动MySQL服务。

通过以上步骤,您可以在Ubuntu上成功升级MySQL版本并迁移数据库文件。如果在操作过程中遇到任何问题,请参考MySQL官方文档或寻求专业人士的帮助。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: ubuntu暂时不能解析域名怎么解决