您的位置:首页 > 数据库 > SQL

Fedora手记(4)——为Django安装MySQL适配器

2011-09-02 18:07 274 查看
今天折腾的内容是:为Django搞上MySQL适配器。

安装过程无需多言,基本是缺啥装啥(那个setuptools啊~)。

最后的问题是当我啥都装上之后,用python manager sqlall myApp的时候,出现了如下的错误信息(不用看太多,最后一行才是重点)

Traceback (most recent call last):

File "manage.py", line 14, in <module>

execute_manager(settings)

File "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", line 438, in execute_manager

utility.execute()

File "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", line 379, in execute

self.fetch_command(subcommand).run_from_argv(self.argv)

File "/usr/lib/python2.7/site-packages/django/core/management/base.py", line 191, in run_from_argv

self.execute(*args, **options.__dict__)

File "/usr/lib/python2.7/site-packages/django/core/management/base.py", line 219, in execute

self.validate()

File "/usr/lib/python2.7/site-packages/django/core/management/base.py", line 249, in validate

num_errors = get_validation_errors(s, app)

File "/usr/lib/python2.7/site-packages/django/core/management/validation.py", line 103, in get_validation_errors

connection.validation.validate_field(e, opts, f)

File "/usr/lib/python2.7/site-packages/django/db/backends/mysql/validation.py", line 14, in validate_field

db_version = self.connection.get_server_version()

File "/usr/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 338, in get_server_version

self.cursor()

File "/usr/lib/python2.7/site-packages/django/db/backends/__init__.py", line 250, in cursor

cursor = self.make_debug_cursor(self._cursor())

File "/usr/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 322, in _cursor

self.connection = Database.connect(**kwargs)

File "/usr/lib/python2.7/site-packages/MySQLdb/__init__.py", line 81, in Connect

return Connection(*args, **kwargs)

File "/usr/lib/python2.7/site-packages/MySQLdb/connections.py", line 187, in __init__

super(Connection, self).__init__(*args, **kwargs2)

_mysql_exceptions.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1 from' (111)")

居然连接不上localhost!

我把setting.py重新设置了一次,无效。

在一个美好的午睡之后,在n次google无果之后,我灵机一动:会不会是mysql还没有启动呢?

于是试了一下mysqladmin start

结果是:

mysqladmin: connect to server at 'localhost' failed

error: 'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)'

Check that mysqld is running and that the socket: '/var/lib/mysql/mysql.sock' exists!

虽然不知道这是什么回事,但解决的方案已经呼之欲出了,把mysql重启一下:/etc/init.d/mysqld restart

所有问题都解决啦!

于是我
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: