在c程序中启动mysql服务器后,立即连接错误

在c程序中启动mysql服务器后,立即连接错误

在c程序中启动mysql服务器后,立即连接mysql服务器时报错:'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)'。我查看/var/lib/mysql目录下没有mysql.sock文件。重新在命令行下启动mysql服务器,仍然没有mysql.sock这个文件。用kill杀死mysqld进程后,命令行下启动mysql服务器,在/var/lib/mysql目录下有了mysql.sock文件,mysql服务器可以连接。我怀疑在c程序中启动mysql服务器的代码(system("/etc/init.d/mysqd start");)执行后,服务器还没有完全启动,这时候连接就会有问题,并且导致mysql服务器进程出错,所以以后也无法重新启动mysql服务器,只有在用kill杀死mysqld进程后才可以重新启动。我在system("/etc/init.d/mysqd start");后加了一句sleep(5);然后就可以连接了。
请教高手,有没有别的办法解决这个问题?      
有这个可能,服务器的启动确实需要一定的时间