Restauração do banco de dados - SQL Server no Linux - Vagrant Virtualbox - host Linux

0

O SQL Server no Linux parece ter problemas para ler a pasta padrão compartilhada / vagrant.

Algumas informações da pasta (ls -l):

  • Pasta raiz: drwxr-xr-x 1 vagrant vagrant 4096 Set 24 09:32 vagrant
  • Arquivo de backup: -rw-rw-rw- 1 vagrant vagrant 32636416 21 de setembro 12:15 myDatabase.bak

Comando:

sudo /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'myPassword' -Q 'RESTORE DATABASE myDatabase_dev FROM DISK = "/vagrant/myDatabase.bak" WITH MOVE "myDatabase_dev" TO "/var/opt/mssql/data/myDatabase.mdf", MOVE "myDatabase_log" TO "/var/opt/mssql/data/myDatabase_log.ldf"'

Resultado:

Msg 3203, Level 16, State 1, Server ubuntu-xenial, Line 1
Read on "/vagrant/myDatabase.bak" failed: 31(A device attached to the system is not functioning.)
Msg 3013, Level 16, State 1, Server ubuntu-xenial, Line 1
RESTORE DATABASE is terminating abnormally.

Se eu mover o arquivo para qualquer outro lugar, mas esta pasta compartilhada, a restauração funcionará. A propriedade do arquivo não importa, ele pode ter qualquer proprietário, desde que não esteja na pasta compartilhada. Não consigo ver nada nas permissões de pasta / arquivo que não permitiria que o MSSQL lesse o arquivo.

Editar: mover o arquivo não é uma opção . Este é um banco de dados de teste, o real é enorme.

Por favor, alguém sabe por que e o que fazer sobre isso?

    
por Staffan Runnsjö 25.09.2018 / 11:25

0 respostas