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

Linux中显示mysql字符集的信息

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

本文内容列表:

  • 1、linux下通过rpm安装mysql时如何将默认字符集改为utf8
  • 2、Linux服务器上的mysql字符集没有GBK编码。
  • 3、在Linux上安装mysql时不支持GBK字符集。
  • 4、linux下如何安装mysql

linux下通过rpm安装mysql时如何将默认字符集更改为utf8

如果 /etc/ 目录下没有 my.cnf 配置文件,则在 /usr/share/mysql/ 中找到 *.cnf 文件,将其中一个复制到 /etc/ 下,并重命名为 my.cnf ;

跑不起来不是问题。如果无法启动,请仔细检查my.cnf文件,看是否需要修改配置,然后检查mysql启动脚本/etc/rc.d/init.d/mysql。最重要的是根据你的mysql错误日志来分析。

设置默认utf-8

将以下配置添加到my.cnf文件中:

[mysqld]

init_connect = 'SET NAMESutf8'tf❙fcharacter = u- collat​​ion-server = utf8_general_ci

第三:

创建数据库后,最好检查一下你的数据库的字符集是什么?您可以通过数据库创建测试看到这一点;命令。需要保证你的数据库的编码格式是utf-8,才能保证插入数据库的都是中文格式

Linux服务器上的mysql字符集没有GBK编码

如果编译安装的话最好加上 --with-charset=gbk

--with-extra-charsets=all

另外,如果你使用了--with-charset=gbk

上面编译时,那么你创建的数据库将默认为gbk字符集。否则,创建数据库时必须指定数据库字符集,

如:create

database

databasename

default

character

set

gbk;

Linux安装mysql,不支持GBK字符集

安装后默认的MySQL字符集是latin1。为了将其字符集更改为用户需要的(例如utf8),必须更改关联的配置文件;因为Linux下MySQL的默认安装目录分布在不同的文件中;与 Windows 不同,它不位于同一目录中。只需编辑my.ini文件,重启后即可生效。那么首先我们来看看Linux下的MySQL数据库文件、配置文件和命令文件。在不同的目录中:

1。数据库目录,所有创建的数据库文件都在这个目录

/var/lib/mysql/

2。配置文件(mysql.server命令和配置文件所在的位置)

/usr/share/mysql

3。相关命令(如mysql mysqladmin等)

/usr/bin

4.启动脚本(例如mysql启动命令)

/etc/rc .d/init.d/

显示默认字符集

#mysql -u root - p

#(输入密码)

mysql 会将变量显示为 'character_set%' ;//或状态

+------------------------+--- - - --------------------- --------+

|变量名 |值 |

+----------------------------+-- -------------- - - -----------+

|字符集客户端 |拉丁1 |

|字符集连接 |拉丁1 |

|字符集数据库 |拉丁1 |

|字符集文件系统 |二进制 |

|字符集结果 |拉丁1 |

|字符集服务器 |拉丁1 |

|角色系统 | utf8 |

|字符集目录 | /usr/share/mysql/charsets/ |

+-------- ------------------+-------- - - ------------------------+

修改字符集:

1。检查/etc目录下是否有my.cnf文件;

#ls -l | grep my.cnf (检查/etc下是否有my.cnf文件)

2.如果没有,从/usr/share/mysql复制到/etc下。 /usr/share/mysql目录下有5个.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.cnf cnf

3。编辑my.cnf文件,在utf8文件中的三个地方添加default-character-set=([client] [mysqld] [mysql])

#vi /etc/my.cnf

编辑如下: (红色为添加部分)

[client]

#password = your_password

port = 3306

socket = /var/lib/mysql/mysql.sock

=default utf8

[ mysqld]

端口=3306

套接字 = /var/lib/mysql/mysql.sock

跳过锁定

key_buffer = 16M

max_allowed_pa​​cket = 1M

table_cache = 64'ffer_54

_buffer_length = 8KB

读取缓冲区大小= 256 kB

read_rnd_buffer_size = 512 kB

myisam_sort_buffer_size = 8M

default-South_character-set=utf8'in it=utf8' 无需添加

[ mysql]

no-auto- rehash

default-character-set=utf8

保存退出;

4。重启MySQL服务器使设置生效

#/etc/init.d/mysql restart

5。再次登录mysql;

# mysql -u root - p

#(输入密码)

mysql 会将变量显示为 'character_set%' ;

+-------- --------- - ----------+--------------------------------+

|变量名 |值 |

+--------------------------+------------ ------ ------------+

|字符集客户端 | utf8 |

|字符集连接 | UTF8 | (utf8已生成并成功。)

|字符集数据库 | utf8 |

|文件系统 | 字符集二进制 |

|字符集结果 | utf8 |

|字符集服务器 | utf8 |

|角色系统 | utf8 |

|字符集目录 | /usr/share/mysql/charsets/ | /usr/share/mysql/charsets/ | --------------------------+------------------------ - - ----+

mysql启动和停止操作:

可以使用#/etc/init.d/mysql [start | stop]来完成。停止| restart](启动、停止、重启)

也可以用#service mysql [start | restart]来完成停止| restart](实现启动、停止、重启)

**************************************** * *

另外:如果你在编辑字符集之前尝试向数据库中插入中文,那么在编辑完插入中文的数据库中的字符集后(在其他数据库中可能没有问题),

通过将变量显示为“character_set%”查询结果可以如下:

+----------------------------+-- - -- ----- ------------------+

|变量名 |值 |

+------------ -------------+---------------- -- ---------+

|字符集客户端 | utf8 |

|字符集连接 | utf8 |

|字符集数据库 |拉丁1 |

|文件系统 | 字符集二进制 |

|字符集结果 | utf8 |

|字符集服务器 | utf8 |

|角色系统 | utf8 |

|字符集目录 | /usr/share /mysql/ 字符集/ |

+----------------------------+------- - -- ------- ------------+

如上所述,character_set_database 仍将是 latin1。公认的方法是先导出数据库中的数据。如果数据不重要,可以删除数据库,

然后重新创建数据库。

如何在linux中安装mysql

1。首先在liunx下安装Mysql数据库

~$ sudo apt-get install mysql-server #安装Mysql服务器

~$ ps -aux|grep mysql #检查Mysql服务器进程

0800.01 。 3604分/7 S+ 5月20日0:00 mysql -u root -p

mysql 25125 0.0 0.0 4472 1704 ? SS 09:51 0:00 /bin/sh /usr /bin/ mysqld_safe

mysql 25496 0.0 3.1 859956 127084?周日 09:51 0:01 /usr/sbin/mysqd --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --log-error=/ var/log/mysql/error.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port= 3306

beili 26652 0 ,0 0.0 13708 2180点/19 S+ 10:32 0:00 grep --color=auto mysql

~$ netstat -nlt|grep 3306 #查看Mysql服务器占用端口

306.10.0 .0.0:* LISTEN

~$ /etc/init.d/mysql status # 使用启动命令检查Mysql服务器状态

Loaded:已加载(/lib/systemd/system/mysql.service ;启用;供应商默认:启用)

活动:自 2015-05-21 星期四 09:51:13 CST 起活动(运行); 43分钟前

进程:25126 ExecStartPost=/usr/share/mysql/mysql- systemd-start post(代码=已完成,状态=0/SUCCESS)

进程:25122 ExecStartPre=/ussql/share -systemd-开始前(代码=已完成,状态=0/成功)

~$ mysql service status # 通过系统服务检查Mysql服务器状态

● mysql.service - MySQL社区服务器

Loaded: 已加载 (/lib/systemd/system/mysql.service;enabled;vendor-preset:enabled)

Active:自 2015 年 5 月 21 日星期四 09:51:13 CST 起活跃(运行); 44分钟前

进程:25126 ExecStartPost=/usr/share/mysql/mysql-systemd-start post(代码=已完成,状态=0/SUCCESS)

进程:25122 ExecStartPre=/ussql/share -systemd- start pre (code=quit, status=0/SUCCESS)

~$ whereis mysql # 显示每个mysql文件 安装目录

mysql: /usr/bin/mysql /usr/lib/mysql /etc/ mysql /usr /include/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

2。访问并配置Mysql

$ mysql -u root -p

输入密码:

Mysql默认字符集是latin1,所以需要改为utf8。网上很多文章运行“sudo vi /etc/mysql/my.cnf”,但是打开后只有两行:

!includedir /etc/mysql/conf.d/

!includedir /etc /mysql/mysql.conf.d/

我以为mysql的配置文件应该在这两个文件夹下,于是尝试打开/etc/mysql/mysql.conf.d/下的mysqld.cnf文件。执行以下命令:

〜$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

...

[客户端]

默认字符集=utf8

[mysqld_safe]❝[mysqld_safe ] = /var/run/mysqld/mysqld.sock

nice = 0

[mysqld]

字符集服务器=utf8

排序服务器=utf8_general_ci'...注意:棕色部分是添加的内容

重启mysql服务,检查字符集设置:

~$ sudo /etc/init.d/mysql restart

~$ mysql -u root -p

mysql 将变量显示为“%char%”

+----------------------------+--------- - ---- ---------------+

|变量名 |值 |

+----------------- ----------+---------------- -------------+

|字符集客户端 | utf8 |

|字符集连接 | utf8 |

|字符集数据库 | utf8 |

|文件系统 | 字符集二进制 |

|字符集结果 | utf8 |

|字符集服务器 | utf8 |

|角色系统 | utf8 |

|字符集目录 | /usr/share/mysql/charsets/ |

版权声明

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

热门