1

mysqldvirtualenv で実行すると、エラーが発生し、メッセージが中止されます。

(nettuts)sez@sez-laptop:~/.virtualenvs$ mysqld
111220 15:22:59 [Warning] Can't create test file /var/lib/mysql/sez-laptop.lower-test
111220 15:22:59 [Warning] Can't create test file /var/lib/mysql/sez-laptop.lower-test
mysqld: Can't change dir to '/var/lib/mysql/' (Errcode: 13)
111220 15:22:59 [ERROR] Aborting

111220 15:22:59 [Note] mysqld: Shutdown complete

最初にMySQL-pythonをインストールしてみました

pip install -E default/ MySQL-python

そしてそれは私に与えました

Requirement already satisfied (use --upgrade to upgrade): '
MySQL-python in ./default/lib/python2.7/site-packages
Cleaning up...

その後、インストールされているかどうかを確認したところ、インストールされていないことが示されました

(nettuts)sez@sez-laptop:~/.virtualenvs$ pip freeze
Django==1.3.1
wsgiref==0.1.2

次に、それをインストールすることにしましたがpip install MySQL-python、表示された原因で問題なくインストールされました

(nettuts)sez@sez-laptop:~/.virtualenvs$ pip freeze
Django==1.3.1
MySQL-python==1.2.3
wsgiref==0.1.2

MySQL-pythonvirtualenvでうまく実行するにはどうすればよいですか?

UPDATE 私が実行するsudo invoke-rc.d mysql startと、これが得られます

(nettuts)sez@sez-laptop:~/.virtualenvs/nettuts$ sudo invoke-rc.d mysql start
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql start

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start(8) utility, e.g. start mysql

次に、実行する方向に従うと、start mysqlこれが得られます

(nettuts)sez@sez-laptop:~/.virtualenvs/nettuts$ sudo start mysql
start: Job is already running: mysql

では、ここで実際に何が起こっているのでしょうか。

4

2 に答える 2

1

It doesn't have anything to do with Python and virtualenv. Your mysqld isn't configured to properly run under a normal user's privileges - it needs to be invoked using your distributions normal service startup mechanism (for instance sudo invoke-rc.d mysql start on Ubuntu).

于 2011-12-20T14:37:43.697 に答える
0

root 権限が必要です。

コマンドの前に sudo を試してください(システムが sudo ユーザーをサポートしている場合http://en.wikipedia.org/wiki/Sudo

それ以外の場合は、最初にコマンドでルートとして検索してみてくださいsu

于 2011-12-20T15:39:40.593 に答える