본문 바로가기

데이터베이스

[ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist

동작하는데 지장을 주는 것은 아니지만 왠지 문제를 일으킬것 같은 느낌?!!!
그래서 찾아보니 해결방법이 있더군요.

일단 에러가 났더라도 무시하고 서버를 띄웁니다.

mysqld --console

그럼 제목과 같은 에러를 보여주면서 서버가 구동됩니다.

mysql -u root@mysql

과 같이 접속합니다. 그리고 아래와 같이 테이블을 생성해주고 서버를 다시 구동하게되면 
제목과 같은 에러가 없어집니다.

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';