石墨抛无法打开数据库文件
tail -f /etc/httpd/logs/error_log
这是setting.py文件的配置
DATABASES = {
'default': {
'NAME': '/opt/graphite/webapp/test.db',
'ENGINE': 'django.db.backends.sqlite3',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': ''
}
}
完毕
python manage.py syncdb
该文件位于以下位置
[root@bash graphite]# ls -l /opt/graphite/webapp/test.db
-rw-rw-rw- 1 nobody nobody 65536 Nov 11 22:22 /opt/graphite/webapp/test.db
它抛出错误以下
[Tue Nov 11 22:24:15 2014] [error] File "/usr/lib/python2.6/site-packages/django/db/backends/util.py", line 53, in execute
[Tue Nov 11 22:24:15 2014] [error] return self.cursor.execute(sql, params)
[Tue Nov 11 22:24:15 2014] [error] File "/usr/lib/python2.6/site-packages/django/db/backends/sqlite3/base.py", line 452, in execute
[Tue Nov 11 22:24:15 2014] [error] return Database.Cursor.execute(self, query, params)
[Tue Nov 11 22:24:15 2014] [error] OperationalError: unable to open database file
检查要执行的用户的权限python manage.py syncdb
。
该用户必须具有读写文件的权限 /opt/graphite/webapp/test.db
以及读取,写入和执行文件夹的权限 /opt/graphite/webapp/
尝试以下命令(从用户执行,即启动python manage.py syncdb
,可能是当前用户)
sudo chown `whoami`:`whoami` /opt/graphite/webapp/test.db # change owner
sudo chmod o+rw /opt/graphite/webapp/test.db # add rights
sudo chown `whoami`:`whoami` /opt/graphite/webapp/
sudo chmod o+rwx /opt/graphite/webapp/
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句