环境:mysql一主一从架构,主库是mysql5.1,从库是mysql5.6;系统均为CentOS6.2
问题:
在主库上面执行的SQL语句
1.创建表
CREATE TABLE `app_versions` (
`date` date NOT NULL,
`app` char(16) NOT NULL,
`ver` char(16) NOT NULL,
`val` int(11) DEFAULT '0',
PRIMARY KEY (`date`,`app`,`ver`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
2.创建用户并且给予权限
grant select on databasename.* to 'username'@'IPaddress' identified by 'password'
3.刷新权限信息
flush privileges
在主库上面执行完之后,在从库上面执行show slave status \G发现IO进程和SQL进程显示的都是NO,然后执行start slave IO_THREAD之后再次执行show slave status \G 发现IO进程是拉起来了的显示的是YES,之后再执行start slave SQL_THREAD进程,show slave status \G发现IO进程和SQL进程都是显示的NO,并且在从库的错误日志中可以获取得到:
在错误日志中可以很明显的看得到日志提示:
Missing system table mysql.proxies_pri;please run mysql_upgrade to create it
日志提示系统表mysql.proxies_pri不存在,需要执行mysql_upgrade,然后我自己google了一下,
发现大部分都是因为升级mysql之后没有执行mysql_upgrade导致的,但是我在主库上面根本就没有进
行任何的升级操作,在从库也是这个样子,然后网上的建议是mysql_upgrade升级修复一下。
mysql_upgrade主要作用是检测所有的表并且升级mysql这个系统库内所有的表,是进行在线升级的,所以并不会影响线上操作(PS:当然不包括有关mysql库的操作)。