Database 在Azure应用程序服务中将SQLite数据库文件放在何处?
Q1:您认为在Azure Web App文件系统中放置SQLite数据库文件(Database 在Azure应用程序服务中将SQLite数据库文件放在何处?,database,sqlite,azure,azure-web-app-service,Database,Sqlite,Azure,Azure Web App Service,Q1:您认为在Azure Web App文件系统中放置SQLite数据库文件(database.SQLite)的正确位置在哪里?例如: D:\home\data\database.sqlite D:\home\site\database.sqlite D:\home\site\wwwroot\database.sqlite 其他的 Q2:为了确保公共用户无法访问数据库文件,并且在部署期间或应用程序放大/缩小时不会意外覆盖数据库文件,还应考虑哪些因素?(Web应用程序配置为从本地Git存储库进行部
database.SQLite
)的正确位置在哪里?例如:
D:\home\data\database.sqlite
D:\home\site\database.sqlite
D:\home\site\wwwroot\database.sqlite
D:\home
(持久)与D:\local
(非持久)
请注意,SQLite在Azure Blob存储中不起作用,因此不能选择。请不要建议其他存储解决方案,这个问题是专门针对SQLite的
工具书类
在Web应用设置中,您可以选择要使用的存储帐户。您可以在“设置”>“数据连接”下找到它,您可以从下拉框中选择存储。我想最好的位置应该是站点/wwwroot文件夹中的app\u Data文件夹。如果文件夹不存在,请创建该文件夹。在Web应用程序中,您的应用程序部署到
d:\home\site\wwwroot
。这是您可以写入文件的区域。例如,ghost
部署将其SQLite数据库写入d:\home\site\wwwroot\content\data\ghost.db.
(如果您通过yourapp.scm.azurewebsites.net
打开kudu控制台,很容易看到这一点):
此文件区域在web应用程序实例之间共享。类似于SMB文件共享,但特定于web应用程序(与Azure的文件服务不同)
除非您删除应用程序服务,否则
wwwroot
下的内容是持久的。放大/缩小会影响可用空间的大小。(我不知道如果你缩小规模,较小的尺寸比你已经消耗的磁盘空间少会发生什么情况)。Q1)选项2和3是相同的Q3)仅是offtopicQ3询问我们推荐或查找书籍、工具、软件库的问题,教程或其他非现场资源不属于堆栈溢出的主题,因为它们往往会吸引固执己见的答案和垃圾邮件。
@lad2025此问题与个人意见无关,它直接关系到Azure应用程序服务的运行方式,以及在部署或放大/缩小时文件最有可能被覆盖的位置。。在什么地方安全。推荐。。。教程或其他非现场资源
@lad2025如果没有证据(答案中提供的信息的原始资源),则无法回答此问题。对于.NET应用程序,是。但在我的例子中,我有一个Node.js应用程序,并且拥有app\u data
文件夹可能会让人困惑。这可能会让人困惑,但会达到您想要的目的:-)您无法将Azure磁盘连接到web应用程序(因此无法将SQLite直接存储在blob中)。您可以,我在发布之前测试了它。但是不能将SQLite存储在blob中。不,我的意思是不能将页面blob作为磁盘附加到web应用程序中。是的,您可以访问存储。但这不是一回事。啊,是的,是的,道歉,误解。如果你的应用程序将被扩展到使用很少的机器会怎么样?这不会创建几个sqlite数据库吗?@titol-no:Web应用程序的实例有一个共享存储区域。在这种情况下,它们都将引用同一个数据库。这与在特定于实例的存储器中存储数据不同。