安装完的MySQL的默认字符集为 latin1 ,为了要将其字符集改为用户所需要的(比如utf8),就必须改其相关的配置文件;由于linux下MySQL的默认安装目录分布在不同的文件下;不像 windows一样放在同一目录下,只需修改其中的my.ini文件,重起后就生效了;所以先来看看linux下MySQL的数据库文件、配置文件和命令 文件分别在不同的目录 :1、数据库目录,其所创建的数据库文件都在该目录下/var/lib/mysql/2、配置文件 (mysql.server命令及配置文件所在地)/usr/share/mysql3、相关命令(如mysql mysqladmin等)/usr/bin4、启动脚本(如mysql启动命令)/etc/rc.d/init.d/查看默认字符集#mysql -u root - p#(输入密码)mysql> show variables like 'character_set%' ;+--------------------------+----------------------------+| Variable_name | Value |+--------------------------+----------------------------+| character_set_client | latin1 || character_set_connection | latin1 || character_set_database | latin1 || character_set_filesystem | binary || character_set_results | latin1 || character_set_server | latin1 || character_set_system | utf8 || character_sets_dir | /usr/share/mysql/charsets/ |+--------------------------+----------------------------+
修改字符集 :1.查找/etc目录下是否有my.cnf文件; #ls -l | grep my.cnf (在/etc下查找是否有my.cnf文件存在)2.如果没有就要从/usr/share/mysql,拷贝一个到/etc 下,在/usr/share/mysql目录下有五个后缀为.cnf的文件,分别是
my-huge.cnf
my-innodb-heavy-4G.cnf
my-large.cnf
my-medium.cnf
my-small.cnf
从中随便拷贝一个到/etc目录下并将其改为my.cnf文件,我选择的是my-medium.cnf :#cp /usr/share/mysql/my-medium.cnf /etc/my.cnf3.修改my.cnf文件,在该文件中的三个地方加上 default-character-set=utf8([client] [mysqld] [mysql])#vi /etc/my.cnf修改如下:(红色为添加部分)[client]#password = your_password port = 3306 socket = /var/lib/mysql/mysql.sock default-character-set=utf8 (经过验证好像这一步不用设置也可以达到效果) [mysqld] port = 3306 socket = /var/lib/mysql/mysql.sock skip-locking key_buffer = 16M max_allowed_packet = 1M table_cache = 64 sort_buffer_size = 512K net_buffer_length = 8K read_buffer_size = 256K read_rnd_buffer_size = 512K myisam_sort_buffer_size = 8M default-character-set=utf8 init_connect='SET NAMES utf8' [mysql] no-auto-rehash default-character-set=utf8 保存退出; 4.重起MySQL服务器,使其设置的内容生效 #/etc/init.d/mysql restart 5. 重新登入mysql; # mysql -u root - p #(输入密码) mysql> show variables like 'character_set%' ;+--------------------------+----------------------------+| Variable_name | Value |+--------------------------+----------------------------+| character_set_client | utf8 || character_set_connection | utf8 |(都生成了utf8,成功了 哈哈哈)| character_set_database | utf8 || character_set_filesystem | binary || character_set_results | utf8 &am p;nbsp; || character_set_server | utf8 || character_set_system | utf8 || character_sets_dir | /usr/share/mysql/charsets/ |+--------------------------+----------------------------+ mysql启动和停止 操作 : 可以通过 #/etc/init.d/mysql [start | stop | restart](实现启动,停止,重启) 也可以通过 #service mysql [start | stop | restart](实现启动,停止,重启)
另转:
全部默认utf8
linux终端utf-8
方法一:
LANG="en_US.UTF-8"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
方法二: vi /etc/profile export LC_ALL="en_US.UTF-8" mysql vi /etc/my.cnf [client] default-character-set=uft8 [mysqld] default-character-set=utf8 init_connect='SET NAMES utf8'