Symptomen
U wordt aangeraden SQL Server 2017 op Linux te gebruiken. De hoofddatabase bevindt zich in de standaardlocatie /var/opt/MSSQL/data.U wilt nu de locatie van het bestand met het hoofddatabase en het foutenlogboekbestand wijzigen in een andere locatie.
Oplossing
Deze update is opgenomen in de volgende cumulatieve update voor SQL Server:
Cumulatieve update 4 voor SQL Server 2017
Na de installatie van SQL Server 2017 CU4, kunt u de locatie van het bestand met de hoofddatabase en de logboeklocatie wijzigen.
Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige cumulatieve update. Bekijk de nieuwste cumulatieve updates voor SQL Server:
Meer informatie
Errorlogfile-locatie configureren:
-
Gebruik de volgende opdracht om een nieuwe locatie voor logboeken in te stellen. Zorg ervoor dat de mapstructuur vooraf is gemaakt en dat het account van MSSQL machtigingen heeft voor het maken van een bestand.
-
./MSSQL-conf set filelocation. errorlogfile/Home/User/sqlserver/log/errorlog
-
De omgevingsvariabele voor het foutenlogboek is MSSQL_ERROR_LOG_FILE.
-
Hier volgen het scenario en de stappen voor het configureren van de locatie van basisbestanden van basisgegevens:
Opmerking: zorg ervoor dat u de volledige back-up van alle databases met een hoofddatabase maakt voordat u wijzigingen aanbrengt.
SCENARIO 1: de locatie van het hoofdop databasebestand wijzigen bij de bestaande SQL-installatie.
-
Nieuwe opties zijn beschikbaar in het hulpprogramma MSSQL-conf om de locatie van het bestand master. MDF, Mastlog. ldf en logboek te geven.
-
Hieronder vindt u de opdrachten voor het instellen van de locatie.
-
./MSSQL-conf set filelocation. masterdatafile/Home/User/sqlserver/data/Master.MDF
-
./MSSQL-conf set filelocation. masterlogfile/Home/User/sqlserver/data/Mastlog.ldf
-
Voordat u de instellingen configureert, moet u ervoor zorgen dat het opgegeven pad al bestaat en ' MSSQL ' de gebruiker volledige machtiging heeft voor de map.
-
Na het configureren van de instelling stopt MSSQL-server (systemctl stop MSSQL-server) en verplaatst u Master. MDF en Mastlog. ldf naar de geconfigureerde locatie en start u SQL Server opnieuw (systemctl start u MSSQL-Server).
SCENARIO 2: vooraf geconfigureerde locatie van het hoofddatabase bestand vóór de installatie.
-
Na de installatie van MSSQL-server (bijvoorbeeld: apt),installeert u MSSQL-server.
-
U kunt omgevingsvariabele als volgt instellen:
-
exporteren MSSQL_MASTER_DATA_FILE =/Home/User/SQLSERVR/data/Master.MDF
-
exporteren MSSQL_MASTER_LOG_FILE =/Home/User/SQLSERVR/data/Mastlog.ldf
-
U kunt ook de stappen in SCENARIO 1 gebruiken voor het instellen van de configuratie en vervolgens de machtiging wijzigen van de map /var/opt/MSSQL/ die eigendom is van een MSSQL-account. Als u omgevingsvariabele en MSSQL-verantwoordings instellingen instelt, hebben de omgevingsvariabelen voorrang.
Opmerking: de bestandsnaam van de basisgegevens basis moet 'Master. MDF ' en het hoofd logboek 'Mastlog. ldf ' zijn tijdens de installatie. De bestandsnaam kan later worden gewijzigd.
Als de mapstructuur niet is gemaakt of als MSSQL-account niet over de juiste machtigingen beschikt, kunt u het volgende foutbericht tijdens de installatie weergeven.
FOUT: BootstrapSystemDataDirectories () fout (HRESULT 0x80070002)
De eerste configuratie van Microsoft SQL Server is mislukt. Neem contact op met het FOUTENLOGBOEK
SCENARIO 3: de naam van de hoofdop databasebestanden wijzigen
-
Stop MSSQL-server.
-
De bestandsnamen instellen met MSSQL-conf
-
Wijzig de naam van de naam van de hoofddatabase voor de geconfigureerde bestandsnamen.
-
MSSQL-server starten
Hieronder vindt u de opdrachten voor het wijzigen van de naam van hoofdop databasebestanden.
systemctl stop MSSQL-server
./MSSQL-conf set filelocation. masterdatafile/Home/SQLSERVR/data/testmaster.MDF
./MSSQL-conf set filelocation. masterlogfile/Home/SQLSERVR/data/testmastlog.ldf
MV/Home/SQLSERVR/data/Master.MDF/Home/SQLSERVR/data/testmaster.MDF
MV/Home/SQLSERVR/data/Mastlog.ldf/Home/SQLSERVR/data/testmastlog.ldf
systemctl start MSSQL-server
Verwijzingen
Lees meer over de terminologiedie door Microsoft wordt gebruikt om software-updates te beschrijven.