有木有遇到过这种情况? 电脑或者服务器需要重装系统? 可是你电脑上存着 n 多个网站的数据库, 怎么办? 把数据库文件夹拷贝出来, 重装系统之后再拷回去? 如果你使用了 InnoDB 引擎, 恐怕那样做会出麻烦的, 一个一个往外导数据库? 天哪, 那要搞到何年何月啊? 今天就来介绍一下如何一口气导出全部数据库, 再把数据库恢复回来, 其实利用 mysqldump 的 --all-databases 参数可以一口气把你数据库 root 用户下的所有数据库一口气导出到一个 sql 文件里. 然后, 重装系统后使用 source 命令可以再一口气倒回来.
导出全部数据库 mysqldump -uroot -p --all-databases> sqlfile.sql
此操作会把数据库服务器 root 用户下的所有数据库都导出来.
如果回车后提示 Enter Password: 请输入你的 MySQL root 密码.
注意: all 前面是两个减号 (-),,databases 前面是一个减号:--all-databases
像上面那样操作, 就会在我的 d 盘生成一个 sqlfile.sql 文件, 导出过程中没有光标闪烁, 当你发现又可以键入命令 (有光标闪烁了), 数据库就导出完成了.
导入:
1. 登录 mysyl: MySQL-uroot -p
根据提示输入密码
然后: sourced:\sqlfile.sql;
记得这句后面有分号哈.
Linux 下路径分隔符是 "/",Windows 下是 "\" 和 "/" 都行
登录本地 MySQL 服务器直接用 MySQL -uroot -p 也可以, 这里我写成
MySQL -hlocalhost -uroot -p 其实是指定了服务器为本地, 访问远程服务器需要在 - h 参数后面指定主机地址
退出 MySQL:
quit 然后回车, 看到 Bye(再见的意思) 就成功退出啦.
另外, source 命令还可以一次导入多个 sql 文件, 下面来介绍下方法:
1. 新建一个 all.sql, 输入下面的内容并保存:
- source d:\sql1.sql
- source d:\sql2.sql
2. 登录 MySQL 后, 输入指令 source all.sql;
以上是使用 MySQL 的命令行模式进行操作的, 不是 phpmyadmin 等图形界面工具的操作方法.
来源: http://www.bubuko.com/infodetail-2808284.html