MariaDBlinux中文显示乱码码

怎么不要mysql,mariadb乱码_百度知道
怎么不要mysql,mariadb乱码
我有更好的答案
|+--------------------------+----------------------------------------------+2)设置character_set_client1)查看数据库编码的方法MariaDB [itat_hibernate]& show variables like &quot,character_set_server为utf8的方法找到C;在命令行中看时注意DOS的默认当前编码,character_set_connection,character_set_results的方法使用或者set names utf8:\Program Files\MariaDB 5.5\share\charsets\%character%&+--------------------------+----------------------------------------------+| Variable_name
|+--------------------------+----------------------------------------------+| character_set_client
|| character_set_connection | gbk
|| character_set_database
|| character_set_filesystem | binary
|| character_set_results
|| character_set_server
|| character_set_system
|| character_sets_dir
| C:\Program Files\MariaDB 5.5\data&#92,如果数据库是utf8有可能会因为DOS的默认编码是936
(ANSI/OEM - 简体中文 GBK)导致的3)设置character_set_database
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。创建临时表 CREATE TEMPORARY TABLE tmp_table SELECT COUNT(*) AS num FROM student_info GROUP BY LEFT(name,1);
一、查看MySQL数据库服务器和数据库MySQL字符集。
show variables like '%char%';
&Linux下一般是 /etc/my.cnf,Windows下一般在系统目录下或者在MySQL的安装目录下名字叫my.ini
注意:新版本的mariadb,如mariadb-10.1的配置些许有些变化
在my.ini文件末尾添加如下
init_connect =&'SET collation_connection = utf8_general_ci'
init_connect =&'SET NAMES utf8'
character_set_server =&utf8
collation_server =&utf8_general_ci
[mysqld_safe]
init_connect =&'SET collation_connection = utf8_general_ci'
init_connect =&'SET NAMES utf8'
character_set_server =&utf8
collation_server =&utf8_general_ci
二、修改mysql默认字符集的方法,就是使用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 collation_connection = utf8 ;
& &mysql& SET collation_database = utf8 ;
& &mysql& SET collation_server = utf8 ;
& &sudo /etc/init.d/mysql stop
& &sudo /etc/init.d/mysql start
& &一、查看MySQL数据库服务器和数据库MySQL字符集。
& &mysql& show variables like '%char%'; &
& &+--------------------------+-------------------------------------+------ &
& &| 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 & & & | D:\MySQL Server 5.0\share\charsets\ |...... &
& &+--------------------------+-------------------------------------+------
二、查看MySQL数据表(table)的MySQL字符集。
& &mysql& show table status from sqlstudy_db like '%countries%'; &
& &+-----------+--------+---------+------------+------+-----------------+------ &
& &| Name & & &| Engine | Version | Row_format | Rows | Collation & & & |...... &
& &+-----------+--------+---------+------------+------+-----------------+------ &
& &| countries | InnoDB | & & &10 | Compact & &| & 11 | utf8_general_ci |...... &
& &+-----------+--------+---------+------------+------+-----------------+------
三、查看MySQL数据列(column)的MySQL字符集。
& &mysql& show full co &
& &+----------------------+-------------+-----------------+-------- &
& &| Field & & & & & & & &| Type & & & &| Collation & & & | ....... &
& &+----------------------+-------------+-----------------+-------- &
& &| countries_id & & & & | int(11) & & | NULL & & & & & &| ....... &
& &| countries_name & & & | varchar(64) | utf8_general_ci | ....... &
& &| countries_iso_code_2 | char(2) & & | utf8_general_ci | ....... &
& &| countries_iso_code_3 | char(3) & & | utf8_general_ci | ....... &
& &| address_format_id & &| int(11) & & | NULL & & & & & &| ....... &
& &+----------------------+-------------+-----------------+-------- &
& &mysql默认字符集能否进行修改呢?答案是肯定的,下面就将教您两种修改mysql默认字符集的方法,希望对您学习mysql默认字符集方面能有所启迪。
(1) 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,
如 default-character-set = utf8
character_set_server = utf8
修改完后,重启mysql的服务,service mysql restart
使用 mysql& SHOW VARIABLES LIKE 'character%';查看,发现数据库编码均已改成utf8
& &+--------------------------+---------------------------------+ &
& &| 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 | D:"mysql-5.0.37"share"charsets" | &
& &+--------------------------+---------------------------------+ &
(2) 还有一种修改mysql默认字符集的方法,就是使用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 collation_connection = utf8 ; &
& &mysql& SET collation_database = utf8 ; &
& &mysql& SET collation_server = utf8 ;
一般就算设置了表的mysql默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:
& &SET NAMES 'utf8'; &
它相当于下面的三句指令:
& &SET character_set_client = utf8; &
& &SET character_set_results = utf8; &
& &SET character_set_connection = utf8;
& &ubuntu上安装mysql非常简单只需要几条命令就可以完成。
  1. sudo apt-get install mysql-server
  2. apt-get isntall mysql-client
  3. &sudo apt-get install libmysqlclient-dev
  安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功:
  sudo netstat -tap | grep mysql
  通过上述命令检查之后,如果看到有mysql 的socket处于 listen 状态则表示安装成功。
  登陆mysql数据库可以通过如下命令:
  mysql -u root -p
  -u 表示选择登陆的用户名, -p 表示登陆的用户密码,上面命令输入之后会提示输入密码,此时输入密码就可以登录到mysql。
阅读(...) 评论()他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)由于CentOS7里软件库已经把mysql删除,使用MariaDB代替,所以我们在项目部署的时候也就直接使用了MariaDB。
使用MariaDB的关键是要把数据库的编码格式改为UTF-8,不然就会出现中文乱码问题。
检查自己数据库编,
登录MariaDB后,使用查看编码命令:show variables like "%character%"
最终编码要与上表显示一致,重要的是Client和Server编码要是UTF-8
修改MariaDB的编码,
1. 打开server.cnf文件:
vi /etc/my.cnf.d/server.cnf
2. 在server.cnf中[mysqld]添加如下代码
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
参考文档地址:http://download.csdn.net/download/dalishuijiao/9999666
3. 打开mysql-clients.cnf文件
vi /etc/my.cnf.d/mysql-clients.cnf
4. 在mysql-clients.cnf中[mysql]中添加如下代码
default-character-set=utf8
参考文档地址:http://download.csdn.net/download/dalishuijiao/9999660
重启MariaDB即可
systemctl restart mariadb他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)}

我要回帖

更多关于 电脑中文显示乱码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信