MySQL数据导入导出的操作
在MYSQL中有自带的工具做数据的导入导出操作,如果ORACLE中的EXP和IMP一样,在MYSQL中导入数据有两种方式,先准备好我们的数据文件,如d:\bbs.sql(这个文件里没有包含建库的create database ...语句)
第一种方式是全在MYSQL命令提示符下操作
- mysql>create database bbs;
- mysql>source d:\bbs.sql
第二种方法是在MYSQL命令提示符下创建表,然后用mysql命令导入数据
- mysql>create database bbs;
- 开始->运行->CMD,进入命令提示方式
- d:\mysql5\bin>mysql -uroot -p12345 bbs<d:\bbs.sql
如果在导出的数据文件中已包含有创建表的命令,那么在导入操作时,创建表的步骤可省
导出数据可以用mysqldump命令,这个命令也是在DOS命令提示符下进行的
- d:\mysql5\bin>mysqldump -uroot -p12345 bbs>d:\bbs2.sql
即把数据库bbs导出到d:\bbs2.sql文件里,通常用这命令导出数据是没有建库语句的
MYSQL中文乱码的处理
修改my.ini参数文件,将[mysql]以及[mysqld]中的字符集改为utf8
[mysql]
#default-character-set=latin1
default-character-set=utf8
... ...
[mysqld]
# The default character set that will be used when a new schema or table is
# created and no character set is defined
#default-character-set=latin1
default-character-set=utf8
重新启动MYSQL,可以在系统服务里重启,也可以通过如下命令方式重新启动
- c:\>net stop mysql
- c:\>net start mysql
重启后在MYSQL提示符下查看字符集编码
mysql> show variables like "%char%";
+--------------------------+-------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | D:\MySQL5\share\charsets\ |
+--------------------------+-------------------------------------+
8 rows in set (0.00 sec)
mysql>
可查看到数据库服务器中的编码已改为了utf8格式
如果客户端用的是EMS,则在连接数据库时需要将Client charset 设置为gbk的方式,当系统的页面,数据库都改用同样的UTF-8编码时,便不会出现中文乱码问题