Ubuntu 18.04上的SQL Server操作系统错误2(系统找不到指定的文件。)

问题描述 投票:1回答:1

我试图在sql server上备份数据库:BACKUP DATABASE [mydb] TO DISK = N'/path/to/file.bak' WITH NOFORMAT, NOINIT, NOSKIP, REWIND, NOUNLOAD, STATS = 10

如果路径为/var/opt/mssql/data/file.bak无法在任何其他位置创建备份,则会创建备份。这是许可问题吗?有人遇到过同样的问题吗?提前致谢。

sql-server ubuntu sqlcmd
1个回答
1
投票

Linux上的SQL Server(在Ubuntu上)在用户mssql下运行。如果您希望SQL Server能够写入该文件夹,那么用户/组mssql需要对该文件夹的写访问(并且能够读取/执行任何父文件夹),mssql用户需要成为该组的一部分。可以,或者其他人的权限需要设置为写入。同样,所有父文件夹都需要允许访问(读/执行)。

如果你有一个文件夹/backups,例如,root:拥有权限770,然后是文件夹/ backups / SQLServer / owned byroot:mssqlwith the permission775, then SQL Server would be unable to write to the folder, as it wouldn't have been able to navigate to the folder / backups`。

© www.soinside.com 2019 - 2024. All rights reserved.