MySQL 5.5初始化資料庫報錯FATAL ERROR: Could not find my_print_defaults

feelpurple發表於2017-12-14
執行初始化MySQL資料庫的資料檔案路徑,並且建立系統表,發生報錯
[root@MySQL01 Percona-Server-5.5.58-rel38.10-Linux.x86_64.ssl101]# scripts/mysql_install_db --user=mysql  --basedir=/mysql_software_55/ --datadir=/mysql_55_3306/data/

FATAL ERROR: Could not find my_print_defaults

The following directories were searched:

    /mysql_software_55//bin
    /mysql_software_55//extra

If you compiled from source, you need to run 'make install' to
copy the software into the correct location ready for operation.

If you are using a binary release, you must either be at the top
level of the extracted archive, or pass the --basedir option
pointing to that location.

報錯原因:
和執行操作的路徑有關,執行的路徑是/mysql_software_55/Percona-Server-5.5.58-rel38.10-Linux.x86_64.ssl101

解決方法:
將所有軟體檔案移動到上一級目錄,刪除Percona-Server-5.5.58-rel38.10-Linux.x86_64.ssl101目錄

cd /mysql_software_55/Percona-Server-5.5.58-rel38.10-Linux.x86_64.ssl101
[root@MySQL01 Percona-Server-5.5.58-rel38.10-Linux.x86_64.ssl101]# mv * ..
[root@MySQL01 Percona-Server-5.5.58-rel38.10-Linux.x86_64.ssl101]# cd ..
[root@MySQL01 mysql_software_55]# rmdir Percona-Server-5.5.58-rel38.10-Linux.x86_64.ssl101/

[root@MySQL01 mysql_software_55]# ./scripts/mysql_install_db --user=mysql  --basedir=/mysql_software_55/ --datadir=/mysql_55_3306/data/
WARNING: The host 'MySQL01' could not be looked up with resolveip.
This probably means that your libc libraries are not 100 % compatible
with this binary MySQL version. The MySQL daemon, mysqld, should work
normally with the exception that host name resolving will not work.
This means that you should use IP addresses instead of hostnames
when specifying MySQL privileges !
Installing MySQL system tables...
171214  9:56:46 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
171214  9:56:46 [Note] /mysql_software_55//bin/mysqld (mysqld 5.5.58-38.10) starting as process 9175 ...
OK
Filling help tables...
171214  9:56:47 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
171214  9:56:47 [Note] /mysql_software_55//bin/mysqld (mysqld 5.5.58-38.10) starting as process 9182 ...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/mysql_software_55//bin/mysqladmin -u root password 'new-password'
/mysql_software_55//bin/mysqladmin -u root -h MySQL01 password 'new-password'

Alternatively you can run:
/mysql_software_55//bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /mysql_software_55/ ; /mysql_software_55//bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /mysql_software_55//mysql-test ; perl mysql-test-run.pl

Please report any problems at
 

Percona recommends that all production deployments be protected with a support
contract () to ensure the highest uptime,
be eligible for hot fixes, and boost your team's productivity.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-2148693/,如需轉載,請註明出處,否則將追究法律責任。

相關文章