Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL不工作_Mysql_Django_Sockets_Amazon Ec2 - Fatal编程技术网

MySQL不工作

MySQL不工作,mysql,django,sockets,amazon-ec2,Mysql,Django,Sockets,Amazon Ec2,我有一个在AmazonLinuxAMI上运行的AmazonEC2实例,它是一个微实例。我想在我的服务器上安装Django,所以我输入了以下命令 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服务httpd r

我有一个在AmazonLinuxAMI上运行的AmazonEC2实例,它是一个微实例。我想在我的服务器上安装Django,所以我输入了以下命令

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服务httpd restart
sudo服务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
我试着找出错误,在我的 它说,
/etc/my.cnf
用于插座

[mysqld]
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under different user or group, 
# customize your systemd unit file for mysqld according to the
# instructions in http://fedoraproject.org/wiki/Systemd
datadir=/mnt/ebs/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysqld]
default-storage-engine=INNODB

[mysqld]
default-storage-engine=INNODB

[mysqld]
default-storage-engine=INNODB

[mysqld]
default-storage-engine=INNODB
所以我去了
/var/lock/subsys/
,那里没有
mysql.sock
。我尝试使用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
更新: 我输入了以下命令:

cd /var/lib/mysql/
touch mysql.sock
chmod +x mysql.sock
chown mysql:mysql -R *
但它仍然不起作用

所以我现在几乎迷路了。我知道它与mysql.sock有关


如果你知道这件事的原因,请告诉我好吗?我的服务器上有一个wordpress站点,所以我需要MySQL才能工作。谢谢

检查您下载并执行的
go
脚本,我发现以下几行:

# Change the MySQL data directory
sed -e 's!/var/lib/mysql$!/mnt/ebs/mysql!' -i /etc/my.cnf
这将有效地更改mysql数据目录(
datadir
设置),因此您无法访问以前创建的任何数据库(如wordpress数据库)

粗略猜测,我认为mysqld无法访问
/mnt/ebs/mysql
,因此无法启动。尝试将其更改回
/var/lib/mysql
。但是,这可能会干扰您的django。如果您让django配置的mysql运行,那么您总是可以添加另一个名称为my.cnf的其他tcp端口,并使用不同的配置运行两个mysql服务器

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

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


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

好的,多亏了@escitalopram,我找到了它,所以我将接受他的答案!好的,django在my
/etc/my.cnf
中将我的MySQL数据目录从
/var/lib/MySQL
更改为
/mnt/ebs/MySQL
,所以在my
/etc/my.cnf
中,它说

[mysqld]
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under different user or group, 
# customize your systemd unit file for mysqld according to the
# instructions in http://fedoraproject.org/wiki/Systemd
datadir=/mnt/ebs/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysqld]
default-storage-engine=INNODB

[mysqld]
default-storage-engine=INNODB

[mysqld]
default-storage-engine=INNODB

[mysqld]
default-storage-engine=INNODB

datadir=/mnt/ebs/mysql
,我把它改成了
datadir=/var/lib/mysql
。一切都很顺利。我重新启动MySQL,希望看到红色的[失败]消息,但我得到了一个[确定]。另外,我的插座在
/etc/my.cnf
中被弄乱了,但我已经修复了

你是对的。我是StackExchange新手,但我认为这应该是一个服务器故障问题?我会把它搬走。。谢谢我的新问题: