欢迎来到天天文库
浏览记录
ID:8796362
大小:193.05 KB
页数:7页
时间:2018-04-08
《mycat程序写入和读取中文乱码解决》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、程序写入mycat中文乱码解决乱码问题可能出现的三个地方1.程序连接的编码要设置jdbc:mysql://192.168.1.1:8066/TESTDB?useUnicode=true&characterEncoding=utf82.mysql数据库的编码要设置1)查看mysqlserver级别的编码集首先进入mysql使用命令mysql-uroot–p然后执行命令查看:showvariableslike'character%+--------------------------+-----------------
2、-----------+
3、Variable_name
4、Value
5、+--------------------------+----------------------------+
6、character_set_client
7、latin1
8、
9、character_set_connection
10、latin1
11、
12、character_set_database
13、utf8
14、
15、character_set_filesystem
16、binary
17、
18、character_set_results
19、NULL
20、
21、character_set_ser
22、ver
23、latin1
24、
25、character_set_system
26、utf8
27、
28、character_sets_dir
29、/usr/share/mysql/charsets/
30、+--------------------------+----------------------------+编辑/etc/mysql/my.cf文件在[client]下添加 default-character-set=utf8 在[mysqld] 下添加character_set_server=utf8 注:[mysqld]处也可使
31、用default-character-set=utf8,如果启动mysql服务出错的话,就使用character_set_server=utf8。2)查看数据库级别的编码是不是一致的,使用mysql客户端可以看到3.mycat的编码默认的是utf8格式的,明确指定在server.xml下的system标签下添加格式如下:utf84.如果业务需要utf8mb4等复杂字符集配置对应修改:默认的是utf8格式的,明确指定在server.xml下的sys
32、tem标签下添加格式如下:utf8mb4然后根据数据库端的字符集ID配置mycat的字符集序列:配置conf/index_to_charset.properties对应为字符集ID=字符集比如45=utf8mb4上述四点配置的编码一致的话乱码就不会出现了。补充:我是windows下的免安装版mysql,库是已经建好的,根据各种百度方案都试过无法解决,最终删除掉现有库,执行创建库命令,执行时带着库的编码,如:CREATEDATABASEmycat5
33、DEFAULTCHARSETutf8COLLATEutf8_unicode_ci;如果创建库和表的时候没指定类型,下面的语句也可以分别指定库和表的编码方式ALTERDATABASE`mycat5`DEFAULTCHARACTERSETutf8COLLATEutf8_general_ci;ALTERTABLE`users`DEFAULTCHARACTERSETutf8COLLATEutf8_general_ci; 补充服务端连接mycat乱码问题解决服务端连接Mycat取出数据乱码使用Mycat后,需要将原有的j
34、ava服务端和PHP的服务端都从amoeba切换到mycat上.但是在测试过程中发现会存在乱码问题,情况是在不同的服务器上,部分PHP的程序连接mycat后获取数据库的内容是乱码,部分服务器又是正常的,特别的蛋疼.为此折腾了好久,终于找到了问题所在,是因为部分PHP的服务端在连接mycat的时候建立的链接是latin1的字符集一、Mycat查看链接的字符集 启动mycat后通过mysql客户端登陆mycat.方法和登陆mysql一致#mysql-h127.0.0.1-P9066-uroot-p123456参数解
35、释-h后面是主机,即当前mycat按照的主机地址,本地可用127.0.0.1远程需要远程ip-uMycatserver.xml中配置的逻辑库用户-pMycatserver.xml中配置的逻辑库密码-P后面是端口默认9066,注意P是大写-dMycatserver.xml中配置的逻辑库登陆成功的信息查看管理端有哪些可用命令Mysql>show@@help;这两
此文档下载收益归作者所有