登录mysql
mysql -u root - p
#查看 character 相关的属性
SHOW VARIABLES LIKE '%character%';
#会得到如下的结果:
+-------------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+---------------------------------+
使用以下办法
#打开/etc/mysql/my.cnf
sudo gedit /etc/mysql/my.cnf
#在[client]内,添加 default-character-set 属性
[client]
...
...
default-character-set=utf8
#在[mysqld]内,添加default-character-set=utf8
[mysqld]
...
...
default-character-set=utf8
#重启 mysql
sudo service mysql restart
停用命令:sudo mysqladmin shutdown -u root -p
启用命令:
sudo /etc/init.d/mysql restart
或者:sudo mysqld_safe -user=mysql &
这样你可能因为你修改了my.cnf而导致启动不成功,这是你可以将
[mysqld]
...
...
default-character-set=utf8
替换为
default-character-set=utf8
然后就可以应该可以成功了。这方法来自http://www.2cto.com/database/201209/156679.html。
2.直接使用命令
set character_set_server='utf8',character_set_database='utf8';
不过每次启动都要设置一次。
便可以转换字体的编码。
+-------------------------------+----------------------------+
| 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 | /usr/share/mysql/charsets/ |
+--------------------------+---------------------------------+
可以用source file执行sql脚本 并将查询结果输出到文本中
sql.sql
create table SC(
Sno int,
Cno int,
Grade int);
insert into SC values(200215121,1,92);
insert into SC values(200215121,2,85);
insert into SC values(200215121,3,88);
insert into SC values(200215122,2,90);
insert into SC values(200215122,3,80);
select * from SC;
insert into student values(200215124,'张立','男',19,'IS');
SELECT * INTO OUTFILE '/tmp/result.text'FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'LINES TERMINATED BY '\n'FROM SC;
会将查询结果输出到/temp/result.text下
成功了 。。。。恭喜~~啊
这样通过set设置似乎只对当前的登录有效,每次登录都得重新设置