Я пытался скомпилировать MySQL 5.5.15 из исходного кода в Debian 6 и использовал «старомодный» способ сделать это: то есть запустить autorun.sh в BUILD, а затем запустить ./configure с несколькими параметрами, и когда Я попытался запустить процесс, вот что вижу:
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
InnoDB: Doing recovery: scanned up to log sequence number 1595675
110816 9:36:06 InnoDB: Starting an apply batch of log records to the database...
InnoDB: Progress in percents: 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
InnoDB: Apply batch completed
110816 9:36:06 InnoDB: Waiting for the background threads to start
110816 9:36:07 InnoDB: 1.1.8 started; log sequence number 1595675
110816 9:36:07 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
110816 09:36:07 mysqld_safe mysqld from pid file /usr/local/mysql/data/myhost.pid ended
Вот ./configure
варианты, которые я использовал:
./configure --prefix=/usr/local/mysql --with-extra-charsets=all\
--enable-thread-safe-client --enable-assembler \
--with-charset=utf8 --enable-thread-safe-client \
--with-extra-charsets=all
make && make install && make install scripts
И я также запустил установку db:
/usr/local/mysql/scripts/mysql_install_db --user=mysql \
--basedir=/usr/local/mysql --datadir=/usr/local/mysql/var
Добавил, что право собственности уже изменено, но проблема осталась:
ls -la
total 20
drwx--S--- 5 mysql mysql 4096 Aug 16 09:25 .
drwxr-sr-x 14 mysql mysql 4096 Aug 16 09:25 ..
drwx--S--- 2 mysql mysql 4096 Aug 16 09:25 mysql
drwx--S--- 2 mysql mysql 4096 Aug 16 09:25 performance_schema
drwx--S--- 2 mysql mysql 4096 Aug 16 09:25 test
Не могли бы вы помочь? Спасибо!
Пожалуйста, используйте cmake вместо autotools. http://dev.mysql.com/doc/mysql-sourcebuild-excerpt/5.5/en/source-configuration-options.html
Разработчики MySQL используют cmake для ветки 5.5, и "configure" больше не поддерживается.
Это ключ
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
Убедитесь, что пользователем каталога данных является mysql
chown -R mysql.mysql /usr/local/mysql/var
Также убедитесь, что ваш каталог данных действительно содержит базу данных mysql и таблицы по умолчанию, которые должны быть созданы с помощью сценария установки.