主服务器执行create建表,其中有字段col为的默认值设置为default '默认类型',是gb2312汉字,语句执行通过;
但从服务器却因为这个语句被卡死了,提示Invalid default value for 'col' 错误。
我怀疑是主从的字符集不符,但查了一下,似乎也没什么不同:主服务器:mysql> show variables like 'char%';
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | gb2312 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | gb2312 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
+--------------------------+----------------------------------------+
从服务器:mysql> show variables like 'char%';
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | gb2312 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | gb2312 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
+--------------------------+----------------------------------------+
还需高手指教
但从服务器却因为这个语句被卡死了,提示Invalid default value for 'col' 错误。
我怀疑是主从的字符集不符,但查了一下,似乎也没什么不同:主服务器:mysql> show variables like 'char%';
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | gb2312 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | gb2312 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
+--------------------------+----------------------------------------+
从服务器:mysql> show variables like 'char%';
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | gb2312 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | gb2312 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
+--------------------------+----------------------------------------+
还需高手指教
解决方案 »
- mysql数据库中中文可以显示但是在php网页上显示为???在线等!!!!!
- myisam锁表问题
- 现有mysqldump备份的sql,还有bin增量备份,如何恢复单个库以及如何恢复单个表?
- 关于ndb的疑问
- create user a01 identified by '123'后不能用密码登录?
- 如何去掉mysql (MyISAM)中的 读锁/写锁 ??
- 在一个表里用select语句查询时,急,谢谢
- 请教:MySQL数据库死锁的问题
- MySQL中文errmsg,有些未汉化,敬请斧正!
- MySQL MediumBlob数据的写入
- 【未解决】mysql查询时不能使用别名查询
- mysql 5.0 修改数据表字段报错
版主好,我试了试,在master上执行
CREATE TABLE tbl(name varchar(30) DEFAULT '无名');没有出现问题,slave同步正常。
出现问题的情况是phpMyAdmin在使用复制数据表功能的时候出现的,会不会跟phpMyAdmin的字符设置有关?