一个游戏服务端,从一个服务器移植到另一个服务器
原数据库为mysql 5.0.22,安装有两个实例对应两个数据库
移植后的数据库为mysql 5.5.22,安装有两个实例对应两个数据库
原数据库my.conf配置参数为
default-character-set=gbk
init_connect=set names binary
skip-character-set-client-handshake
skip-name-resolve
新数据库编译安装,字符集为gbk,
my.conf中加上参数default-character-set=gbk,无法启动服务
百度后改为character_set_server=gbk,游戏客户端只能登陆不能进游戏
去掉skip-character-set-client-handshake参数,可进,但有乱码问题出在哪?
原数据库为mysql 5.0.22,安装有两个实例对应两个数据库
移植后的数据库为mysql 5.5.22,安装有两个实例对应两个数据库
原数据库my.conf配置参数为
default-character-set=gbk
init_connect=set names binary
skip-character-set-client-handshake
skip-name-resolve
新数据库编译安装,字符集为gbk,
my.conf中加上参数default-character-set=gbk,无法启动服务
百度后改为character_set_server=gbk,游戏客户端只能登陆不能进游戏
去掉skip-character-set-client-handshake参数,可进,但有乱码问题出在哪?
不加这个参数有乱码,但可以进游戏
这个参数影响哪些方面
show variables like 'char%'
set names 'gbk';
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | gbk |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | gbk |
| character_set_system | utf8 可是已经设置过了
搜索skip-character-set-client-handshake也搜不到太多有用的信息,费解的是虚拟机linux系统的配置文件带这个参数,却不会调用出错.数据库用navicat for mysql进行的数据传输.
2013-09-24 22:46:19 : void DBExecuteUnit::ProcessExecQuery() : SQLQueryException : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''痋'', '', 21000, 4, 0) -- optionType=(175 39 ) ThirdOptionType=(NONE)' at line 1
Result* Statement::executeQuery(const stlp_std::string&)
Result* Statement::executeQuery()