Code前端首页关于Code前端联系我们

编辑mysql数据库中的字符集问题,MySQL更改字符集

terry 2年前 (2023-09-30) 阅读数 40 #Mysql
文章标签 Mysql

本文内容列表:

  • 1、如何更改mysql数据库的字符集
  • 2、如何更改mysql数据库中的字段字符集
  • 3.如何更改MySQL字符集
  • 4、如何更改mysql数据库的字符集
  • 5、如何更改mysql表字段的字符集
  • 6.Mysql更改数据库字符编码的方法

如何更改mysql数据库字符集

方法/步骤

如果cmd中没有配置mysql环境变量,请在系统高级设置中设置mysql环境变量。

win+R,调用“运行”,输入cmd,回车

登录数据库,

查看数据库

查看数据库的字符编码

通过MySQL命令行编辑: (编码可选)

mysql setcharacter_set_client=utf8;

mysqlsetcharacter_set_connection=utf8;

mysqlsetcharacter_set_database=utf8;

resscharacter_set_8; l 设置character_set_server=utf8;

mysql setCharacter_Set_system=UTF8;

Mysql 设置 Collat​​ion_Connection = UTF8;

Mysql 设置 Collat​​ion_DataBase = UTF8;

Mysql 设置 Collat​​ion_Server = UTF 8;当然是:

编辑数据库的字符集mysqluse mydb

mysqlalter数据库mydb字符集utf8;

创建数据库指定数据库的字符集

mysqlcreate数据库mydb字符集utf8;

如何更改mysql数据库字段字符集

关键字:字符集gbkutf8。 w表中的字符集原本设置为gbk,但是当前表要求字符集为utf8。所以:改变

`w`

默认

字符

设置

utf8;或更改

tbl_name

转换

字符

字符集名称;但发现其中一个字段内容的字符集仍然是gbk。于是改变mysql数据库表中某个字段的字符集,修改字段定义:alter

table

`w`

modify

column

`content`

varchar(3 ) )

字符集

utf8

not

null;

如何更改MySQL字符集

首先MySQL的字符集版本主要有两个概念,一个是Character Sets,一个是Collections。前者是字符内容

和编码,后者是对前者进行比较运算的一些规则。这两个参数集可以从数据库实例、单库、表、列等四个级别来指定。

对于用户来说,一般建议使用utf8编码来存储数据。解决乱码问题,不仅是MySQL数据的存储问题,还与用户程序文件的编码方式以及用户程序与MySQL数据库的连接方式有关。

首先,MySQL有一个默认字符集,它是在安装时确定的。编译MySQL时,可以将DEFAULT_CHARSET=

utf8和DEFAULT_COLLATION=utf8_general_ci(对于MySQL版本5.5和5.1)--with-charset=

utf8 --with-collat​​ion=utfci)两个参数传递给default_general_utci)字符设置为utf8。这也是最永久的方法。指定这种方式后,

客户端连接数据库的编码方式也会改变。默认为utf8,应用程序无需处理。

但遗憾的是,很多人在编译安装MySQL时并没有指定这两个参数,大多数都是通过二进制程序来安装。所以

目前MySQL的默认字符集是latin1。目前我们仍然可以通过my.cnf文件添加

两个参数来指定MySQL的默认字符集:

1。在[mysqld]版本下添加

default-character-set=utf8(mysql 5.5)版本添加character-set-server=utf8)

2。在[client]下添加

default-character-set=utf8

,这样我们建库建表时就不需要指定utf8字符集了。 。配置文件中的这种写法解决了数据存储和比较的问题

,但对客户端连接没有影响。此时,客户端一般应指定utf8连接方式,以避免出现乱码。这是传说中的设置名称的命令。事实上,命令集名称utf8在服务器端对应如下命令:

SET character_set_client = utf8;

SET character_set_results = utf8;

SET character_set_connection = xutf8;

但这三个参数是不能写在配置文件my.cnf中。只能通过set命令动态改变。我们需要的是一个写在配置文件中的一劳永逸的方法。那么此时有没有办法解决服务器端的问题呢?一种可能的想法是将其放在 init_connect 中。当每个

普通用户连接时,该命令将触发执行。您可以在 [mysqld] 部分添加以下行来设置连接字符集:

在 [mysqld] 下添加:

init_connect = 'SET NAMES utf8'

概述:

1。编译安装MySQL时最好指定两个参数并使用utf8编码。

2。另一种选择是在配置文件my.cnf或my.ini中设置两个参数,同时设置init_connect参数。

3。第三,在 my.cnf 或 my.ini 配置文件中设置两个参数,并为客户端连接指定 set names 命令。

4。在 my.cnf 配置文件中向客户端和服务器添加 default-character-set 参数,以便于管理。

复制代码

1 -------客户端----

2 [客户端]

3 无蜂鸣声

4

5 # 管道

6 # 套接字=mysql =3306

8

9 [mysql]

10

11 默认字符集=gb2312

12

--13 -------13 ------ -13 ------

15 # 当创建新模式或表时将使用的默认字符集

16 # 创建且未定义字符集

17 character-set-server= gb2312

复制代码

1,服务mysqld停止,禁用mysql。

2.cp /etc/my.cnf /etc/my.cnf.bak,更改前做好备份是一个好习惯。

编辑my.cnf或my.ini(只有更改配置文件并重启服务器才会永久生效)

vi /etc/my.cnf

在【客户端】下添加,客户端是控制客户端,我没试过。如果没有,则无需添加。

default-character-set=utf8

在【mysqld】下添加,mysqld控制服务器端,改一下,OK。

default-character-set=utf8

3.service mysqld restart,重启。

4.显示变量,如“%char%”;看法。

以下转载自网络,比较完整。

/////////////////////////////////////////////

查看mysql字符集 MySQL乱码的根本原因是MySQL字符

ubuntu 10.04 mySql启动、停止、重启

Start: sudo /etc/init.d/mysql start su /setStop:/init.d/ mysql停止

重新启动:sudo /etc/init.d/mysql restart

注意:从Windows复制的文件不能直接添加到Linux下的数据库中,因为字符集不同。虽然打开时显示的是中文,但是在数据库中却无法显示。您需要将文件复制到 Linux 中的另一个文件来转换字符。能够。

MySQL乱码的主要原因是MySQL字符集设置不正确。本文总结了显示MySQL字符集的命令。包括检查MySQL数据库服务器字符集,检查MySQL数据库字符集,以及数据表和字段的字符集,当前安装的MySQL支持的字符集等。

1。检查MySQL数据库服务器和数据库字符集。

mysql 显示类似“%char%”的变量;

2。查看MySQL数据表(table)的字符集。

mysql 将 sqlstudy_db 中的表状态显示为“%countries%”;

3。查看MySQL数据列(column)的字符集。

mysql 显示来自国家/地区的整个列;

4。检查当前安装的MySQL支持的字符集。

mysql 显示字符集;

mysql 显示字符集;

参见上面适用于 Windows Linux 的 MySQL 字符集命令。

1。查找MySQL的cnf文件位置

find / -iname '*.cnf' -print

/usr/share/mysql/my-innodb-heavy-4G.cnf

/usr /share/ mysql/ my-large.cnf

/usr/share/mysql/my-small.cnf

/usr/share/mysql/my-medium.cnf

/usr/share/mysql/ my-huge.cnf

/usr/share/texmf/web2c/texmf.cnf

/usr/share/texmf/web2c/mktex.cnf

/usr/share/texmf/web2c/fmtutil.cnf

/share /texmf/tex/xmltex/xmltexfmtutil.cnf

/usr/share/texmf/tex/jadetex/jadefmtutil.cnf

/usr/share/doc/MySQL-server-community-5.1.22/my-innodb-heavy-4G.cnf

/usr/share /doc/MySQL-server-community-5.1.22/my-large.cnf

/usr/share/doc/MySQL-server-community-5.1.22/my-small.cnf

/usr/share /doc/MySQL-server-community-5.1.22/my-medium.cnf

/usr/share/doc/MySQL-server-community-5.1.22/my-huge.cnf

2。复制小 将 .cnf、my-medium.cnf、my-huge.cnf 和 my-innodb-heavy-4G.cnf 之一移动到 /etc 并命名为 my.cnf

cp /usr/share/mysql/my -medium.cnf /etc/my.cnf

3。编辑 my.cnf 或 my.ini(版本 5.6)

vi /etc/my.cnf

在 [client] 字符集 = utf8 下添加

default-

添加 -default - set=utf8

under [mysqld] 4. 重新启动MySQL

[root@bogon ~]# /etc/rc.d/init .d/mysql restart

关闭MySQL [确定]启动MySQL 。 [OK]

[root@bogon ~]# mysql -u root -p

输入密码:

欢迎来到 MySQL 屏幕。命令以 ; 结尾或\g。

您的 MySQL 连接 ID 是 1

服务器版本:5.1.22-rc-community-log MySQL 社区版 (GPL)

输入“help;”或“\h”寻求帮助。输入'\c'清除缓冲区。

其他一些设置方法:

通过配置文件编辑:

编辑/var/lib/mysql/mydb/db.opt

default-character- set=latin1

default -collat​​ion=latin1_swedish_ci

default-character-set=utf8

default-collat​​ion=utf8_general_ci重新启动 Mybo重新启动 My ]# /etc/rc.d/ init.d /mysql restart

如何更改mysql数据库的字符集

1、重启mysql服务,服务mysql-restart

使用mysql SHOW VARIABLES LIKE 'character%';检查一下,发现数据库编码已经改为utf8

+------------------------+------------------------ -- - -- ----------+ |变量名称 |价值| +------------------------+-------------------- --- -- -----+ |字符集客户端 | UTF8 | |字符集连接| UTF8 | |字符集数据库 | UTF8 | |字符集文件系统 |二进制| |字符集结果 | UTF8 | |字符集服务器 | UTF8 | |字符集系统| UTF8 | |字符集目录 | D:"mysql-5.0.37"共享"字符集" | +--------------------------------+------------------------------------ --- --------+

(2)还有一种方法可以改变mysql的默认字符集,就是使用mysql命令

mysql SET character_set_client = utf8; mysql 设置character_set_connection = utf8; mysql 设置字符集数据库 = utf8; mysql 设置character_set_results = utf8; mysql 设置字符集服务器 = utf8 ; mysql 设置 collat​​ion_connection = utf8; mysql SET collat​​ion_database = utf8; mysql 设置 collat​​ion_server = utf8;

一般来说,即使你将MySQL的表默认字符集设置为utf8,并通过UTF-8编码来传递查询,你也会发现数据库中存储的数据仍然是乱码。问题就出在这个连接层。解决方案是在发送查询之前执行以下语句:

SET NAMES 'utf8';

对应以下三个指令:

SET character_set_client = utf8;设置字符集结果=utf8; SET character_set_connection = utf8;

如何更改mysql表字段的字符集

更改mysql的默认字符集是通过更改其配置文件来实现的。一般来说有两种情况:

windows平台

windows下Mysql的配置文件是my.ini。一般是c:windowsmy.ini 或c:winntmy.ini。您可以将 ​​standard 直接添加到此文件中。 -character-set=gbk

#or gb2312,big5,utf8

然后重启mysql

服务

mysql

restart❀♹ds /d/it/it。

重启

或使用其他方式重启即可生效。

unix平台

Linux下的Mysql配置文件是my.cnf,通常是/etc/my.cnf。如果找不到,可以使用find命令查找:

find

/

-iname

my.cnf

Add

default-character-set= gbk

#或gb2312、big5、utf8

写入此文件,然后重启mysql

net

stop

mysql

net即可生效。

mysql 如何更改数据库字符编码

如何更改mysql中的数据库字符编码?使用客户端工具很容易更改,我们来看看。

01

打开navicat客户端工具,在左侧找到你要修改的数据库。

02

右键单击​​数据库,然后单击菜单中的数据库属性。

03

在弹出的属性窗口中,单击“默认字符集”下的下拉菜单。

04

在出现的下拉菜单中,只需单击即可选择您要使用的字符集。选择例如选择常用的utf8字符集,然后单击“确定”按钮。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

热门