17站长网

17站长网 首页 数据库 Mysql 查看内容

查看MySQL字符集的三种方法

2023-3-16 15:46| 查看: 1860 |来源: 互联网

MySQL字符集设置系统变量:– character_set_server:默认的内部操作字符集– character_set_client:客户端来源数据使用的字符集– character_set_connection: ...

MySQL字符集设置

系统变量:

– character_set_server:默认的内部操作字符集

– character_set_client:客户端来源数据使用的字符集

– character_set_connection:连接层字符集

– character_set_results:查询结果字符集

– character_set_database:当前选中数据库的默认字符集

– character_set_system:系统元数据(字段名等)字符集

– 还有以collation_开头的同上面对应的变量,用来描述字符序。

       登陆MySQL数据库:

C:/Users/duansf>mysql -u root -p

Enter password: ******

Welcome to the MySQL monitor.  Commands end with ; or /g.

Your MySQL connection id is 4

Server version: 5.5.13 MySQL Community Server (GPL)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.

mysql>

一.查看MySQL数据库服务器和数据库MySQL的字符集:

mysql> show variables like '%char%';

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

| Variable_name            | Value                                                         |

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

| character_set_client     | utf8                                                          |

| character_set_connection | utf8                                                          |

| character_set_database   | gbk                                                           |

| character_set_filesystem | binary                                                        |

| character_set_results    | utf8                                                          |

| character_set_server     | utf8                                                          |

| character_set_system     | utf8                                                          |

| character_sets_dir       | C:/Program Files (x86)/MySQL/MySQL Server 5.5/share/charsets/ |

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

8 rows in set (0.00 sec)

二.查看MySQL数据表(table)的MySQL字符集:

mysql> use test

Database changed

mysql> show table status from test like '%work%';

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

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

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

| Name     | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length |

 Index_length | Data_free | Auto_increment | Create_time         | Update_time | Check_time | Collat

ion       | Checksum | Create_options | Comment |

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

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

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

| workinfo | InnoDB |      10 | Compact    |    1 |          16384 |       16384 |               0 |

        32768 |   9437184 |              4 | 2016-03-07 16:13:51 | NULL        | NULL       | utf8_g

eneral_ci |     NULL |                |         |

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

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

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

1 row in set (0.00 sec)

三.查看MySQL数据列(column)的MySQL字符集:

mysql> show full columns from workinfo;

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

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

| Field    | Type        | Collation       | Null | Key | Default | Extra          | Privileges

                 | Comment |

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

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

| id       | int(10)     | NULL            | NO   | PRI | NULL    | auto_increment | select,insert,u

pdate,references |         |

| name     | varchar(20) | utf8_general_ci | NO   |     | NULL    |                | select,insert,u

pdate,references |         |

| type     | varchar(10) | utf8_general_ci | YES  |     | NULL    |                | select,insert,u

pdate,references |         |

| address  | varchar(50) | utf8_general_ci | YES  |     | NULL    |                | select,insert,u

pdate,references |         |

| tel      | varchar(20) | utf8_general_ci | YES  |     | NULL    |                | select,insert,u

pdate,references |         |

| wages    | int(11)     | NULL            | YES  |     | NULL    |                | select,insert,u

pdate,references |         |

| contents | tinytext    | utf8_general_ci | YES  |     | NULL    |                | select,insert,u

pdate,references |         |

| extra    | text        | utf8_general_ci | YES  |     | NULL    |                | select,insert,u

pdate,references |         |

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

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

8 rows in set (0.02 sec)

解决字符集通讯设置不匹配的方法:

(修改默认的character_set_client,character_set_connection,character_set_result)

1. 重新编译mysql和php,mysql加入编译参数 –default-character-set=utf8

2. PHP程序在查询数据库之前,执行mysql_query(”set names utf8;”);

3.修改my.cnf,在[mysqld]中加入init-connect=”set names utf8” (对于超级用户连接该选项无效)

4. 启动mysqld 加入参数 –skip-character-set-client-handshake 忽略客户端字符集。

本文最后更新于 2023-3-16 15:46,某些文章具有时效性,若有错误或已失效,请在网站留言或联系站长:17tui@17tui.com
·END·
站长网微信号:w17tui,关注站长、创业、关注互联网人 - 互联网创业者营销服务中心

免责声明:本站部分文章和图片均来自用户投稿和网络收集,旨在传播知识,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系我们及时修正或删除。谢谢!

17站长网微信二维码

始终以前瞻性的眼光聚焦站长、创业、互联网等领域,为您提供最新最全的互联网资讯,帮助站长转型升级,为互联网创业者提供更加优质的创业信息和品牌营销服务,与站长一起进步!让互联网创业者不再孤独!

扫一扫,关注站长网微信

大家都在看

    热门排行

      最近更新

        返回顶部