这节列出在你运行MySQL_install_db时,你可能遇见的问题:

MySQL_install_db不安装授权表
在显示下列消息以后,你可以发现MySQL_install_db不能安装授权表并终止:
starting MySQLd daemon with databases from XXXXXX
MySQL daemon ended

在这种情况下,你应该很小心地检验日志文件!日志文件应该位于目录“XXXXXX”,用错误消息命名,并且应该指出为什么MySQLd没启动。如果你不理解发生的事情,当你使用MySQLbug邮寄一份错误报告时,包含日志文件!见2.3 怎样报告错误或问题

已经有一个MySQLd守护程序在运行
在这种情况下,你可能根本不必运行MySQL_install_db。当你第一次安装MySQL时,你必须只运行MySQL_install_db一次。
当一个守护进程正在运行时,安装第二个MySQLd守护进程不工作
这只有在当你已经有已存在的MySQL安装但是想要把新安装放在一个不同的地方时才会发生(例如,为了测试或者也许你简单地想要同时运行2个安装)。通常当你试着运行第二个服务器时,发生的问题是它试图和旧一个使用同样的套接字和端口。在这种情况下,你将得到错误消息:Can't start server: Bind on TCP/IP port: Address already in useCan't start server : Bind on unix socket...你能用一个不同的套接字和端口启动新的服务器,如下:
shell> MySQL_UNIX_PORT=/tmp/MySQLd-new.sock
shell> MySQL_TCP_PORT=3307
shell> export MySQL_UNIX_PORT MySQL_TCP_PORT
shell> scripts/MySQL_install_db
shell> bin/safe_MySQLd &

在这以后,你应该编辑你的服务器引导脚本手迹用不同的套接字和端口启动两个守护进程。例如,它能调用safe_MySQLd两次,但是对每次调用使用不同的--socket--port--basedir选项。

你没有“ /tmp ”的写权限
如果你没有写权限在缺省地方(在“/tmp”里)创建一个套接字文件,或没有在“/tmp”创建临时文件的许可,在运行MySQL_install_db或当启动或使用MySQLd时,你将得到一个错误。你可以如下地指定一个不同的套接字和临时目录:
shell> TMPDIR=/some_tmp_dir/ 
shell> MySQL_UNIX_PORT=/some_tmp_dir/MySQLd.sock 
shell> export TMPDIR MySQL_UNIX_PORT

“some_tmp_dir”应该是你有写许可的某个目录的路径。在这以后,你应该能运行MySQL_install_db并且这些命令启动服务器:

shell> scripts/MySQL_install_db
shell> BINDIR/safe_MySQLd &
MySQLd立刻崩溃
如果你正在运行RedHat 5.0,有一个比2.0.7-5旧的glibc版本,你应该保证你安装了glibc所有补丁!在MySQL邮件档案中有很多关于它的信息。邮件档案的链接可在联机MySQL文档页得到。也可见4.11.5 Linux 注意事项(所有Linux版本)。你也可以手工启动MySQLd,使用--skip-grant选项并且增加使用MySQL本身的权限信息:
shell> BINDIR/safe_MySQLd --skip-grant &
shell> BINDIR/MySQL -u root MySQL

MySQL,手工执行在MySQL_install_db里面的SQL命令。保证你随后运行MySQLadmin reload告诉服务器再装入授权表。