对于 PHP+MySQL 组合的网站,站长无可避免跟 MySQL 打交道。所以,掌握 MySQL 附带工具命令行及 MySQL 操作语句是很有必要的。掌握了,其实很简单,可以避免在服务器安装第三方软件进行备份。

在 Windows DOS 任意路径下的使用 MySQL 附带的 mysqldump 和 mysql 工具是有前提的,必须要要把 mysql 的 bin 路径添加到系统变量,如果使用 MySQL 安装版最佳,因为安装版在安装的时候已经把路径添加到系统变量,以致可以直接任意目录执行相关 DOS 命令。

下面介绍如何使用 mysqldump 进行导出 mysql 的 sql 脚本。

运行-cmd,

一般会停留在:

然后输入:

mysqldump -u root -p kingcms > d:\kingcms.sql

我这里以数据据名字:kingcms 举例而已,实际使用需要替换 kingcms 为你的数据库名字。

输入账号 root 的密码,即可完成导出工作。

以上举例的语句是保存 kingcms 的数据库到 d 盘的:kingcms.sql 文件当中。

运行之后,去 d 盘就能找到该文件了。

这样就完成 SQL 数据备份,当然,如果数据库中存在触发器和储存过程的话,是需要另外指令备份的,这里不举例,因为 K9 默认用这个指令备份就行了。大笑

下面演示,如何导入。

先新建数据库账号及数据库,再导入已备份的 SQL(如果已经有数据库的话需要删除重建)。

因为要输入一些命令行,在 windows 建议把以下信息保存成 sql,然后替换对应的数据库名称和密码,实现一键新建数据库并且新建授权的账号:

CREATE USER 'kinguser'@'localhost';
GRANT USAGE ON * . * TO  'kinguser'@'localhost' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE DATABASE IF NOT EXISTS  `kingdb` ;
GRANT ALL PRIVILEGES ON  `kingdb` . kingpass TO  'kinguser'@'localhost';

  • kinguser代表数据据用户名字;
  • kingdb代表数据库名字;
  • kingpass代表 kinguser 的密码,并且拥有 kingdb 的全部操作权限。
  • 请逐项修改成自己的。

备注:以上脚本是直接用 phpmyadmin 生成的。

如果保存成 kingdb.sql,该如何保存呢?直接拷贝以上 sql 语句,新建一个文本,记得显示后缀名,然后粘贴以上 SQL 到文本,修改对应的数据据名字,密码等,然后修改文本的名字为 kingdb.sql,即.txt 后缀名改成.sql。以下是运行方法,这样可以免除登录 mysql 逐个语句运行的麻烦。

运行方法:

  1. 如果保存在 d 盘,d:\kingdb.sql;
  2. 运行-cmd,然后输入:mysql -u root -p < kingdb.sql

这样,就完成新建数据库,数据库账号,以及赋权限。

接着,把备份的 sql 导入该库,同样道理:

运行-cmd,

然后输入:mysql -u root -p kingcms < d:\kingdb.sql

接着按照提示输入 root 的密码。


多些尝试,使用 MySQL 附带的工具导出,导出,备份 SQL 都是非常方便的。而且完全符合 SQL 标准语法,因为它是 MySQL......避免第三方工具导出出现的任何不兼容。最关键的是,再也不用担心数据库过大的备份和导入问题了。