本文目录一览:
- 1、mysql数据库怎么设置编码格式
- 2、如何更改MySQL数据库编码为UTF-8或者GB2312?
- 3、mysql怎么修改已有数据库的编码方式
- 4、linux mysql 创建数据库 并且指定编码
- 5、MYSQL 如何设置数据库编码
- 6、如何设置Mysql数据库默认的字符集编码为GBK
mysql数据库怎么设置编码格式
1、 编辑MySql的配置文件
MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是/etc/my.cnf
--在 [mysqld] 标签下加上以下内容:
default-character-set = utf8
character_set_server = utf8
注意:如果此标签下已经存在“default-character-set=GBK”类似的内容,只需修改即可。
--在 [mysql] 标签下加上一行
default-character-set = utf8
--在 [mysql.server]标签下加上一行
default-character-set = utf8
--在 [mysqld_safe]标签下加上一行
default-character-set = utf8
--在 [client]标签下加上一行
default-character-set = utf8
2、 重新启动MySql服务
Windows可在服务管理器中操作,也可使用命令行:
net stop mysql 回车
net start mysql 回车
服务名可能不一定为mysql,请按自己的设置
Linux下面可是用 service mysql restart
如果出现启动失败,请检查配置文件有没有设置错误
3、 查看设置结果
登录MySql命令行客户端:打开命令行
mysql –uroot –p 回车
输入密码
进入mysql后 执行 :show variables like "% character %";
显示结果应该类似如下:
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
如果仍有编码不是utf8的,请检查配置文件,也可使用mysql命令设置:
set character_set_client = utf8;
set character_set_server = utf8;
set character_set_connection = utf8;
set character_set_database = utf8;
set character_set_results = utf8;
set collation_connection = utf8_general_ci;
set collation_database = utf8_general_ci;
set collation_server = utf8_general_ci;
另外:
建立数据库时可以使用以下命令:
create database app_relation character set utf8;
use app_relation;
source app_relation.sql;
修改数据库编码的命令为:
alter database app_relation character set utf8;
如何更改MySQL数据库编码为UTF-8或者GB2312?
mysql 创建 数据库时指定编码很重要,很多开发者都使用了默认编码,乱码问题可是防不胜防。制定数据库的编码可以很大程度上避免倒入导出带来的乱码问题。
网页数据一般采用UTF8编码,而数据库默认为latin 。我们可以通过修改数据库默认编码方式为UTF8来减少数据库创建时的设置,也能最大限度的避免因粗心造成的乱码问题。
我们遵循的标准是,数据库,表,字段和页面或文本的编码要统一起来
我们可以通过命令查看数据库当前编码:
mysql SHOW VARIABLES LIKE 'character%';
发现很多对应的都是 latin1,我们的目标就是在下次使用此命令时latin1能被UTF8取代。
第一阶段:
mysql设置编码命令
[sql] view plain copy
SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;
SET character_set_server = utf8;
然后 mysql SHOW VARIABLES LIKE 'character%'; 你可以看到全变为 utf8
。
但是,这只是一种假象
此种方式只在当前状态下有效,当重启数据库服务后失效。
所以如果想要不出现乱码只有修改my.ini文件,
从my.ini下手(标签下没有的添加,有的修改)
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
default-character-set=utf8
以上3个section都要加default-character-set=utf8,平时我们可能只加了mysqld一项。
然后重启mysql,执行
mysql SHOW VARIABLES LIKE 'character%';
确保所有的Value项都是utf8即可。
但是可恶的事情又来了,
|character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8
注意 该配置| character_set_server | latin1 无法设置成UTF8 交互时候仍然会出现乱码。
第二阶段:找到下面这东东
X:\%path%\MySQL\MySQL Server 5.0\bin\MySQLInstanceConfig.exe
重新启动设置,将默认编码设置为utf8.这样就能达到我们所要的效果了。
mysql SHOW VARIABLES LIKE 'character%';
+--------------------------+---------------------------------------------------------+
| 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 | C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set
mysql怎么修改已有数据库的编码方式
方法/步骤
如果没有配置好cmd里面的mysql
环境变量,那就在系统高级设置那儿进行MySQL的环境变量设置。
win+R,调出“运行”,输入cmd,回车
登录数据库,
查看数据库
查看数据库字符编码
通过MySQL命令行修改:(编码可选)
mysql
set
character_set_client=utf8;
mysql
set
character_set_connection=utf8;
mysql
set
character_set_database=utf8;
mysql
set
character_set_results=utf8;
mysql
set
character_set_server=utf8;
mysql
set
character_set_system=utf8;
mysql
set
collation_connection=utf8;
mysql
set
collation_database=utf8;
mysql
set
collation_server=utf8;
当然还有:
修改数据库的字符集mysqluse
mydb
mysqlalter
database
mydb
character
set
utf8;
8
创建数据库指定数据库的字符集
mysqlcreate
database
mydb
character
set
utf8;
linux mysql 创建数据库 并且指定编码
1、首先在linux终端窗口处输入mysql -u root -p 命令,然后输入root帐户密码连接sql数据库。
2、连接上数据库后,执行命令show variables like 'character%';查看数据库的编码格式。
3、然后退出数据库,修改数据库的配置文件my.cnf文件,此文件如果通过rpm安装一般在/etc/目录下。
4、修改完成后,保存配置的修改,然后执行命令service mysqld restart。重新启动数据库。
5、然后待数据库重启完成后,重新连接数据库,执行命令show variables like 'character%'; 查看更改后的编码格式,可以看到已经修改为utf8编码。
MYSQL 如何设置数据库编码
default-character-set=utf82单独设置某个数据库:
alter database testdb character set utf8;
查看mysql支持的编码:
show character set;也可以使用如下方法查看编码:
SHOW STATUS mysql -uroot use YOUR DATABASE status ---------------------------------- Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 TCP port: 3306 Uptime: 53 sec ---------------------------------- 如果 client 为utf8 , 改为: set char set 'gbk'; 查看数据库编码:show create database your_db_name
如何设置Mysql数据库默认的字符集编码为GBK
1、更改服务器的编码方式,在终端输入以下命令:
mysqld
--character-set-server=gbk
--collation-server=gbk_chinese_ci;
2、更改某个数据库的编码方式
mysql
-u
root
-p
alter
database
character
set
gbk
collate
gbk_chinese_ci;
3、在创建数据库时指定编码:
mysql
-u
root
-p
create
database
db_name
character
set
gbk
collate
gbk_chinese_ci;
4、更改某个表的编码方式
mysql
-u
root
-p
db_name
alter
table
table_name
convert
to
charachter
set
gbk
collate
gbk_chinese_ci;
5、在创建表时指定编码方式
mysql
-u
root
-p
db_name
create
table
table_name
(....)
character
set
gbk
collate
gbk_chinese_ci;
6、更改某行的编码方式
mysql
-u
root
-p
db_name
alter
table
table_name
modify
column_name
varchar(20)
character
set
gbk
collate
gbk_chinese_ci;
7、在创建列时指定编码方式:
/prepre
name="code"
class="sql"mysql
-u
root
-p
db_name
create
table
table_name
(...,
col1
varchar(20)
character
set
gbk
collate
gbk_chinese_ci,
...)
character
set
utf8
collate
utf8_general_ci;