mysql是常见的数据库服务器软件,本文介绍架设MySQL服务器时常用配置操作的实现方法。
本文包括以下内容:
1 修改root密码
2 添加数据库和相应的用户
3 配置语言
4 备份和还原
4.1 备份单个数据库
4.2 备份整个数据库
4.3 还原
4.3.1 导入4.0以前版本的数据
修改root密码
多数发行版附带的MySQL默认是无root密码的,建议运行如下命令设置root密码并增强安全性:
mysql_secure_installation
如果只是想修改root密码,也可在MySQL交互终端下输入:
UPDATE mysql.USER SET password=PASSWORD('新密码') WHERE USER='root';
FLUSH privileges;
添加数据库和相应的用户
常需要添加一个数据库,并添加一个可控制该数据库的用户,这两个操作可用如下几条命令完成:
CREATE DATABASE 数据库名;
GRANT ALL privileges ON 数据库名.* TO 新用户名@localhost IDENTIFIED BY '密码';
FLUSH privileges;
配置语言
为避免出现乱码,建议装好服务器就设置编码为UTF-8,
设置方法很简单,编辑/etc/my.cnf文件,在[mysqld]一节中加入:
default-character-set=utf8
character-set-server = utf8
collation-server = utf8_general_ci
备份和还原
在命令行中mysqldump命令可用于备份,也可使用phpmyadmin通过网页进行有选择的备份。
备份单个数据库
使用mysqldump备份:
mysqldump -u root -p --opt database_name > database_dump.sql
注意:
用户和相关权限信息不会被备份,如要备份这些信息,请备份mysql数据库或备份整个数据库。
备份整个数据库
要备份整个数据库,包括所有的数据库和用户信息,可使用如下命令:
mysql -u root -p --all-databases --add-drop-database --flush-privileges > all_dump.sql
还原
还原时,只需让mysql执行备份文件即可。
可以在mysql中使用source命令执行sql,也可以直接把文件重定向到mysql的输入:
mysql -u root -p -D database_name < database_dump.sql
如果备份环境和还原环境的MySQL版本不同,应用mysql_upgrade升级数据库文件:
mysql_upgrade -u root -p
提示:
导入时如遇Table 'mysql.servers' doesn't exist错误,请去掉flush privileges的行再导入,导入后按上述说明升级或运行mysql_fix_privilege_tables即可。
导入4.0以前版本的数据
导入4.0以前版本MySQL的数据时,可能会出现乱码。如果是因为在老版数据库上使用了UTF-8编码,那么可以这样解决:
首先,4.0备份出来的一般是latin1编码,要在sql文件里写明是utf-8编码(如果是其它编码,请在确认后标明)
/*!40101 SET NAMES utf-8 */;
再将数据库的编码设为UTF-8,导入数据即可。