ASIANUX에서 최초 MySQL Daemon을 아래의 명령어에 의해서 실행 시킬 경우,
다음과 같은 에러 메세지가 나타난다.
#mysqld_safe --user=mysql &
[root@tekstudio bin]# Starting mysqld daemon with databases from
/var/lib/mysql
STOPPING server from pid file /var/run/mysqld/mysqld.pid
050901 12:47:43 mysqld ended
[1]+ Done mysqld_safe --user=mysql
/var/log/mysqld.log에서 다음과 같은 내용을 확인 할 수 있다.
050901 10:58:29 mysqld started
050901 10:58:29 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
050901 10:58:29 InnoDB: Starting log scan based on checkpoint at
InnoDB: log sequence number 0 43634.
InnoDB: Doing recovery: scanned up to log sequence number 0 43634
050901 10:58:29 InnoDB: Flushing modified pages from the buffer pool...
050901 10:58:29 InnoDB: Started; log sequence number 0 43634
050901 10:58:29 [ERROR] Fatal error: Can't open privilege tables: Table 'mysql.host' doesn't exist
050901 10:58:29 mysqld ended
위의 에러 내용을 초기 Data Base Table이 생성되지 않아 생기는 문제로,
다음과 같이 해결 할 수 있다.
#cd /usr/bin/
#mysql_install_db 을 실행 한다.
/var/lib/mysql에 다음과 같이 새로운 Directory가 생성 된 것을 알 수 있다.
-rw-rw---- 1 mysql mysql 5242880 9월 1 13:10 ib_logfile0
drwxr-xr-x 4 mysql mysql 4096 9월 1 13:10 .
srwxrwxrwx 1 mysql mysql 0 9월 1 13:10 mysql.sock
drwxr-xr-x 30 root root 4096 9월 1 13:07 ..
drwx------ 2 root root 4096 9월 1 12:47 mysql
drwx------ 2 root root 4096 9월 1 12:47 test
-rw-rw---- 1 mysql mysql 10485760 9월 1 10:15 ibdata1
-rw-r--r-- 1 mysql mysql 140 9월 1 10:14 mysqld_multi.log
-rw-rw---- 1 mysql mysql 5242880 9월 1 10:12 ib_logfile1
위의 작업으로 새로 생성된 Directory의 Owner를 root 에서 mysql로 다음의
명령어로 바꾸어 준다.
#chown -R mysql.mysql /var/lib/mysql
-rw-rw---- 1 mysql mysql 5242880 9월 1 13:10 ib_logfile0
drwxr-xr-x 4 mysql mysql 4096 9월 1 13:10 .
srwxrwxrwx 1 mysql mysql 0 9월 1 13:10 mysql.sock
drwxr-xr-x 30 root root 4096 9월 1 13:07 ..
drwx------ 2 mysql mysql 4096 9월 1 12:47 mysql
drwx------ 2 mysql mysql 4096 9월 1 12:47 test
-rw-rw---- 1 mysql mysql 10485760 9월 1 10:15 ibdata1
-rw-r--r-- 1 mysql mysql 140 9월 1 10:14 mysqld_multi.log
-rw-rw---- 1 mysql mysql 5242880 9월 1 10:12 ib_logfile1
위의 작업이 완료 된 후 다음과 같은 명령어로 MySQL Daemon을 실행 시킨다.
#mysqld_safe --user=mysql &
위의 Command로 MySQl Daemon이 잘 동작하는지 확인 한 후
다음의 수순으로 root 계정의 password를 새로이 등록한다.
#/usr/bin/mysqladmin -u root password 'new-password'
You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &
You can test the MySQL daemon with the benchmarks in the 'sql-bench'
directory:
cd sql-bench ; perl run-all-tests -pass password