概述
起因是原来mysql是5.0.47的,后来想用分区表,故整个库导出,
然后倒入5.1.51的环境中,但是在创建存储过程中出现如下错误:
1558 - Column count of mysql.proc is wrong. Expected 20, found 16
1 :保险一点先dump或者冷备份:
mysqldump -uroot -p111111 --quick --master-data=1 --all-databases --flush-logs --lock-tables >
2解决办法:
使用命令:mysql_upgrade就可以解决
mysql_upgrade -u root --datadir=/var/lib/mysql/ --basedir=/ --password=123456
下面是我操作的过程:
[root@db lib]# mysql_upgrade -u root -p111111 -hdb --datadir=/var/lib/mysql/ --basedir=/
mysql_upgrade: the '--datadir' option is always ignored
mysql_upgrade: the '--basedir' option is always ignored
Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
Running 'mysqlcheck' with connection arguments: '--host=db'
Running 'mysqlcheck' with connection arguments: '--host=db'
mysql.columns_priv OK
mysql.db OK
mysql.event OK
mysql.func OK
mysql.general_log
Error : You can't use locks with log tables.
status : OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
mysql.ndb_binlog_index OK
mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
mysql.servers OK
mysql.slow_log
Error : You can't use locks with log tables.
status : OK
mysql.student OK
mysql.t1 OK
mysql.t2 OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.user OK
................................................
test.newuser OK
test.usertag OK
Running 'mysql_fix_privilege_tables'...
WARNING: NULL values of the 'character_set_client' column ('mysql.proc' table) have been updated with a default value (latin1). Please verify if necessary.
WARNING: NULL values of the 'collation_connection' column ('mysql.proc' table) have been updated with a default value (latin1_swedish_ci). Please verify if necessary.
WARNING: NULL values of the 'db_collation' column ('mysql.proc' table) have been updated with default values. Please verify if necessary.
OK
[root@db lib]#
最后
以上就是殷勤未来为你收集整理的mysql.proc is wrong_mysql 1558 - Column count of mysql.proc is wrong 的解决的全部内容,希望文章能够帮你解决mysql.proc is wrong_mysql 1558 - Column count of mysql.proc is wrong 的解决所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复