当前位置: 首页 > 知识库问答 >
问题:

django.db.utils。操作错误:无法打开数据库文件

臧威
2023-03-14

当我跑步时

python manage.py runserver

我得到这个错误

get _ new _ connection conn = database . connect(* * conn _ params)Django . db . utils . operational错误:无法打开数据库文件

my settings.py:

DATABASES = {
    'default': dj_database_url.config(
        default="sqlite:///{}".format(
            os.path.join(BASE_DIR, 'db/db.sqlite3')
        )
    )
}

共有3个答案

钮出野
2023-03-14

我也有同样的问题,刚刚解决了。确保www-data(或运行您的web服务器的任何守护进程)能够访问db.sqlite3文件以及该文件的路径。所以:

sudo chown :www-data <project_folder>/
sudo chown :www-data <project_folder>/db.sqlite3
sudo chmod 664 <project_folder>/db.sqlite3
狄海
2023-03-14

基本上有两个答案,任何一个用户运行服务器没有权限打开数据库文件。您可以尝试通过以下方式解决此问题:

sudo chown $(whoami):$(whoami) /path/to/dir/db/db.sqlite3

或者您没有此文件,可以通过应用迁移命令来创建它:

./manage.py migrate
宗政财
2023-03-14

因为同样的问题而痛苦了一段时间,我相信我终于找到了解决办法!

sudo python manage.py runserver

这对我来说很有用。

我的权限告诉我一切都应该是这样的。不管怎样,我仍然必须在终端的命令开头输入sudo。

 类似资料:
  • 我用的是Android平板,上面有Xamarin/C#应用。我试图用这款平板电脑访问驻留在我的Windows 10机器上的SQLite数据库。我选择使用USB/Android而不是Android模拟器,应用程序仍然驻留在Windows 10机器上。这似乎无关紧要,但我也尝试过映射驱动器、共享文件夹和创建网络连接。项目参考 这是代码: 命名空间CicoAndroid{公共部分类MainPage: C

  • 输出 Tkinter回调 回溯(最近一次调用)中出现异常: 文件“C:\Users\Mevada\AppData\Local\Programs\Python\Python37\lib\Tkinter\uuuuuu init\uuuuuuuuuu.py”,第1702行,在调用返回self中。func(*args) 文件“test.py”,第9行,在func\u image font\u type\u

  • 问题内容: 好吧,这是我在下面进行的操作,以获取错误,但不知道为什么数据库连接失败。 创建一个新的ASP.NET网站 将新的* .mdf数据库添加到App_Data 使用Visual Studio中的服务器资源管理器向其中添加一些表 右键单击“数据库”,然后单击“复制连接”字符串。如下所示将其插入WebConfig文件 问题答案: 我有一个偷偷摸摸的怀疑,它与权限有关。完全控制您的“授权用户”。

  • 问题内容: 我似乎遇到了错误:将我的SQL Server数据库连接到用netbeans编写的Java应用程序时。 我已经阅读了许多文章,并做了以下工作: 在UDP和TCP下允许1433端口连接到防火墙 将SQL Server配置管理器TCP / IP端口设置为1433 将SQL Server Management Studio中的服务器身份验证更改为混合身份验证 SQL Server Manage

  • 问题内容: 问题:为什么我不能打开数据库? 信息:我正在使用数据库进行项目。我编写了一个测试程序,该程序运行并传递数据库: 单元测试程序可以使之毫无问题。但是,当我实际使用将相同位置传递给它的程序时,出现以下错误: OperationalError:无法打开数据库文件 我试着用: 在三种情况下,我遇到了以上错误。最令人沮丧的部分是事实可以做到这一点,但实际程序却做不到。 关于到底发生了什么的任何线

  • 问题内容: 在Django中设置服务器时出现此错误。它是sqlite3,这意味着它应该创建.db文件,但似乎没有这样做。我已经将SQLite规定为后端,并且将其放置在绝对的文件路径中,但是没有运气。 这是错误还是我做错了什么?(只是在想,在Ubuntu中指定的绝对文件路径是否有所不同?) 这是我的settings.py文件的开头: 问题答案: 问题你正在使用SQLite3,你的DATABASE_N