1、mysql不建议在root用户下运行
2、出现服务启动不了,111错误,注意要用chown来赋予权限, 我在root用户下装的mysql,我就把usr/share/mysql/mysql.server复制到/etc/init.d/mysqld, (同时把my-huge.cnf复制/etc/my.cnf)
chown -R cc /etc/init.d/mysqld
chown -R cc /usr/share/mysql/
chown -R cc /var/mysql/lib
chown -R cc /usr/bin/mysql
(cc是我的一个普通账户)
3、完后可以启动了,然后发现还是进不去,出现Access Denied错误,那就先停止mysql服务,
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
如果你不在后台运行就另开一个terminal,以root进去,运行
UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
然后Flush Privileges,这时有可能还会出现说Table 'mysql.servers' doesn't exist.那就建立张表:
CREATE TABLE `servers` (
`Server_name` char(64) NOT NULL,
`Host` char(64) NOT NULL,
`Db` char(64) NOT NULL,
`Username` char(64) NOT NULL,
`Password` char(64) NOT NULL,
`Port` int(4) DEFAULT NULL,
`Socket` char(64) DEFAULT NULL,
`Wrapper` char(64) NOT NULL,
`Owner` char(64) NOT NULL,
PRIMARY KEY (`Server_name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=’MySQL Foreign Servers table’;
或者利用mysql_fix_privilege_tables.sql去fix一下。