主服务器执行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/ |
+--------------------------+----------------------------------------+
还需高手指教
版主好,我试了试,在master上执行
CREATE TABLE tbl(name varchar(30) DEFAULT '无名');没有出现问题,slave同步正常。
出现问题的情况是phpMyAdmin在使用复制数据表功能的时候出现的,会不会跟phpMyAdmin的字符设置有关?