MySQL没有打开

我在亚马逊Linux AMI上运行了一个amazon ec2实例和一个微型实例。 我想把Django安装到我的服务器上,所以我input了这些命令

wget http://www.mlsite.net/blog/wp-content/uploads/2008/11/go wget http://www.mlsite.net/blog/wp-content/uploads/2008/11/django.conf chmod 744 go ./go 

所以在我完成之后,我运行了sudo service httpd restartsudo service mysqld restart

这是为mysqld而来的:

 Stopping mysqld: [ OK ] MySQL Daemon failed to start. Starting mysqld: [FAILED] 

所以我删除了django文件/usr/local/python2.6.8/site-packages/django_registration.egg ,我试图find这个错误,并且发现在我的/etc/my.cnf ,这个套接字表示socket=/var/lock/subsys/mysql.sock所以我去了/var/lock/subsys/并没有mysql.sock 。 我试图创build一个使用VIM,但它仍然无法正常工作。 然后我检查了错误日志,它说

 120712 20:33:11 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended 120712 20:33:15 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 

更新:

我input了这些命令:

 cd /var/lib/mysql/ touch mysql.sock chmod +x mysql.sock chown mysql:mysql -R * 

而它仍然没有工作…

所以我现在很失落 我知道这与mysql.sock

如果你可能知道这个原因造成的,你可以让我知道吗? 我有我的服务器上的WordPress的网站,所以我需要MySQL的工作。 谢谢!

检查你下载和执行的脚本,我发现了以下几行:

 # Change the MySQL data directory sed -e 's!/var/lib/mysql$!/mnt/ebs/mysql!' -i /etc/my.cnf 

这有效地改变你的MySQL数据目录( datadir设置),所以你不能访问任何以前创build的数据库(如wordpress数据库)。

作为一个疯狂的猜测,我会认为mysqld不能访问/mnt/ebs/mysql ,因此不能启动。 尝试将其更改回/var/lib/mysql 。 但是,这可能会干扰你的Django。 如果你得到了djangoconfiguration的mysql运行,你可以随时添加另一个名字和其他的tcp端口my.cnf,运行两个不同configuration的MySQL服务器。

套接字错误消息是关于MySQL服务器不运行。 不要试图通过放置文件来模拟套接字。

go脚本还对my.cnf做了一些更改,这可能是一个问题。 看看自己的文件,并尝试撤消所做的更改。

如果没有上述的帮助,你可以尝试从命令行手工启动mysqld进程,使用与服务脚本相同的参数,加上一个添加的--verbose并将其输出。

好的,我明白了@escitalopram,所以我会接受他的回答! 好吧,django将我的MySQL数据目录从/var/lib/mysql更改为/etc/my.cnf /mnt/ebs/mysql ,因此在我的/etc/my.cnf ,它表示

datadir=/mnt/ebs/mysql ,并将其更改为datadir=/var/lib/mysql 。 一切正常。 我重新启动MySQL希望红色的[FAILED]消息,但我得到了[确定]。 另外,我的套接字在/etc/my.cnf中搞砸了,但是我已经修复了这个问题!

我在亚马逊e2c服务器上有相同的情况

我也这样做了:

  cd /var/lib/mysql/ sudo touch mysql.sock sudo chmod +x mysql.sock sudo chown mysql:mysql -R * 

重启服务器,
然后:

 sudo /etc/init.d/mysqld start 

检查mysql:

 mysql -u root -p 

注意,这不会解决问题。 但它会让您有机会访问数据并转移到可靠的服务器