当前位置:首页 > 问答 > 正文

教你怎么轻松把mysql数据库搬家,步骤分享给你参考下

咱们得搞清楚为啥要给数据库搬家,有时候是服务器要换了,比如从旧的虚拟主机搬到新的云服务器;有时候是本地开发好了,要传到线上的服务器去,不管啥原因,核心就两步:先把旧家里的数据库打包收拾好(这叫备份导出),然后在新家里把打包好的东西拆开摆好(这叫恢复导入),方法有很多,我挑两种最常用、也相对轻松的方法跟你说,一种是直接用命令行操作,另一种是用图形化工具,更适合新手。

用MySQL自带的命令行工具(最通用、最可靠)

这个方法需要你能够访问服务器的命令行界面,比如用SSH工具连上你的Linux服务器,或者在你的电脑上打开命令提示符(CMD)或PowerShell,别怕命令行,跟着步骤走,一点也不难。

第一步:在老房子打包行李——备份数据库

备份的命令很简单,用的是 mysqldump 这个工具,它的基本格式长这样:

mysqldump -u 用户名 -p 数据库名 > 备份出来的文件名.sql

我来给你拆解一下:

  • -u 后面跟着的是你的数据库用户名,root 或者你自定义的名字。
  • -p 意思是需要输入密码,注意,-p和密码之间不要有空格,或者你也可以只写-p,然后在回车后系统会提示你输入密码,这样更安全。
  • 数据库名 就是你要搬家的那个数据库的具体名称。
  • > 这个符号是重定向符号,意思是把备份出来的内容,不是显示在屏幕上,而是保存到后面指定的文件里。
  • 备份出来的文件名.sql 是你自己取的名字,my_database_backup_20240530.sql,建议带上日期,方便管理。

举个例子,假设你的数据库用户是 root,数据库名叫 my_website,你想把备份文件放在当前目录下,叫 backup.sql,那么你就在命令行里输入(输完按回车):

mysqldump -u root -p my_website > backup.sql

回车后,系统会提示你输入密码,密码输入正确后(输入时光标不会移动,是正常的),如果命令行没有报错,直接跳转到新的一行,那就说明备份成功了,你现在当前目录下就能找到一个叫 backup.sql 的文件,这个就是你整个数据库的“行李包裹”。

小贴士: 如果你的数据库很大,这个备份文件可能会很大,你可以用压缩软件(比如WinRAR,7-Zip)把它打个包,这样等下传输的时候能快很多。

第二步:把行李运到新家——传输备份文件

打包好的 .sql 文件需要放到你的新服务器上,方法有很多:

  • 如果新老服务器都是你的,可以用 scp 命令直接传输。
  • 更常见的是,先从老服务器下载到这个文件到你自己的电脑,然后再通过FTP工具(比如FileZilla)或者云盘等方式,上传到新服务器上一个你知道的目录里,/home/ 目录或者 C:\temp\ 目录。

第三步:在新家拆包摆放——恢复数据库

在新服务器上恢复之前,你得先确保新服务器上的MySQL已经装好了,并且已经创建了一个空的数据库,这个新数据库的名字不一定要和原来的一样,但你恢复的时候需要知道它叫啥,假设我们新数据库还叫 my_website

恢复用的命令是 mysql,格式和备份的很像,但是符号反了过来:

mysql -u 用户名 -p 新数据库名 < 备份文件名.sql

同样拆解一下:

  • -u-p 的意思同上,这里用的是新服务器上的数据库用户名和密码。
  • 新数据库名 就是你刚刚在新服务器MySQL里创建的那个空数据库的名字。
  • < 这个符号意思是把后面文件里的内容,导入到前面的数据库里。

继续上面的例子,我们把传到新服务器上的 backup.sql 文件,导入到新数据库 my_website 中,命令就是:

mysql -u root -p my_website < backup.sql

回车,输入新服务器的数据库密码,然后耐心等待,如果数据库比较大,这会花点时间,命令行光标可能会停在那里闪,只要不报错就等着,等到命令提示符再次出现,就意味着恢复成功了!现在你可以用数据库管理工具(比如phpMyAdmin)连上去看看,数据应该都已经完好无损地搬过来了。

用图形化工具(比如phpMyAdmin,更直观)

如果你用的是虚拟主机,或者服务器上安装了phpMyAdmin这个Web端的数据库管理工具,那操作起来就更像在网站上点按钮了,非常直观。

备份步骤(导出):

  1. 用浏览器打开你的phpMyAdmin,http://你的域名/phpmyadmin
  2. 在左边点击选中你要备份的数据库。
  3. 点击顶部菜单的“导出”选项卡。
  4. 导出方法通常就选“快速”就行,格式默认是SQL,不用动。
  5. 直接点击底部的“执行”按钮,浏览器就会开始下载一个.sql的备份文件到你的电脑上,这一步就相当于命令行里的备份。

恢复步骤(导入):

  1. 在新服务器的phpMyAdmin里,先创建一个同名的空数据库(如果还没有的话),并在左边选中它。
  2. 点击顶部菜单的“导入”选项卡。
  3. 点击“选择文件”按钮,从你的电脑上找到刚才下载的那个.sql备份文件。
  4. 页面下方的其他设置通常保持默认就可以,直接拉到最下面点“执行”按钮。
  5. 然后你会看到一个进度条,导入成功后会有提示,这样数据就恢复好了。

最后的重要提醒:

不管你用哪种方法,有两点一定要记住:

  1. 搬家前务必在老地方做好备份,并且下载到本地电脑保存好,以防万一传输或恢复过程中出问题,这是你的“后悔药”。
  2. 恢复成功后,一定要仔细检查,随便打开几个表看看数据对不对,或者让网站前台运行一下,看看功能是否正常,确认无误后,再把老的数据库停掉或者删除。

就是把MySQL数据库搬家的两种主要方法,命令行看起来有点吓人,但其实是基本功,一旦用熟了非常高效,图形化工具则对新手非常友好,你可以根据你的情况和喜好来选择,希望这个分享能帮到你!

教你怎么轻松把mysql数据库搬家,步骤分享给你参考下