Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server Linux rendszeren
Ez az oktatóanyag bemutatja, hogyan helyezhet át és állíthat vissza SQL Server biztonsági mentési fájlt a Dockeren futó SQL Server 2017 (14.x) Linux-tárolórendszerképbe.
Ez az oktatóanyag bemutatja, hogyan helyezhet át és állíthat vissza SQL Server biztonsági mentési fájlt a Dockeren futó SQL Server 2019 (15.x) Linux-tárolórendszerképbe.
Ez az oktatóanyag bemutatja, hogyan helyezhet át és állíthat vissza SQL Server biztonsági mentési fájlt a Dockeren futó SQL Server 2022 (16.x) Linux-tárolórendszerképbe.
Ez az oktatóanyag bemutatja, hogyan helyezhet át és állíthat vissza SQL Server biztonsági mentési fájlt a Dockeren futó SQL Server 2025 (17.x) Linux-tárolórendszerképbe.
- Kérje le és futtassa a legújabb SQL Server Linux-tárolórendszerképet.
- Másolja a Wide World Importers adatbázisfájlt a tárolóba.
- Állítsa vissza az adatbázist a tárolóban.
- Futtassa Transact-SQL utasításokat az adatbázis megtekintéséhez és módosításához.
- Készítsen biztonsági másolatot a módosított adatbázisról.
Előfeltételek
- Telepített tároló futtatókörnyezete, például Docker vagy Podman
- Telepítse a legújabb sqlcmd
- linuxos SQL Server rendszerkövetelményei
Üzembe helyezési lehetőségek
Ez a szakasz a környezete számára az üzembehelyezési lehetőségeket ismerteti.
sqlcmd jelenleg nem támogatja a MSSQL_PID paramétert tárolók létrehozásakor. Ha az oktatóanyag sqlcmd utasításait használja, hozzon létre egy tárolót az SQL Server Developer kiadásával. A parancssori felület (CLI) utasításaival hozzon létre egy tárolót a választott licenc használatával. További információ: Sql Server Linux-tárolók üzembe helyezése és csatlakoztatása.
A tárolórendszerkép lekérése és futtatása
Nyisson meg egy Bash-terminált Linuxon.
Kérje le az SQL Server 2017 (14.x) Linux tárolórendszerképét a Microsoft Container Registryből.
sudo docker pull mcr.microsoft.com/mssql/server:2017-latestA tárolólemezkép Dockerrel való futtatásához használja a következő parancsot:
sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' \ --name 'sql1' -p 1401:1433 \ -v sql1data:/var/opt/mssql \ -d mcr.microsoft.com/mssql/server:2017-latestFigyelem
A jelszónak az SQL Server alapértelmezett jelszóházirendetkell követnie. Alapértelmezés szerint a jelszónak legalább nyolc karakter hosszúnak kell lennie, és a következő négy készletből három karakterből kell állnia: nagybetűk, kisbetűk, 10 számjegyből és szimbólumokból. A jelszavak legfeljebb 128 karakter hosszúak lehetnek. Használjon olyan jelszavakat, amelyek a lehető legkomplexebbek és hosszúak.
Ez a parancs létrehoz egy SQL Server 2017 -tárolót (14.x) a Developer kiadással (alapértelmezett). Az SQL Server
1433portja a gazda gépen1401portként van kitéve. Az opcionális-v sql1data:/var/opt/mssqlparaméter létrehoz egysql1datanevű adatkötet-tárolót. Ez az SQL Server által létrehozott adatok megőrzésére szolgál.Fontos
Ez a példa egy adatkötet-tárolót használ a Dockeren belül. További információ: Sql Server-tárolólemezképek konfigurálása a Docker.
A tárolók megtekintéséhez használja a
docker psparancsot.sudo docker ps -aHa a
STATUSoszlopUpállapotot mutat, akkor az SQL Server fut a tárolóban, és figyeli aPORTSoszlopban megadott portot. Ha az SQL Server-tárolóhoz tartozóSTATUSoszlopbanExitedlátható, lásd a Az SQL Server Docker-tárolók hibaelhárításacímű témakört.
$ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
941e1bdf8e1d mcr.microsoft.com/mssql/server/mssql-server-linux "/bin/sh -c /opt/m..." About an hour ago Up About an hour 0.0.0.0:1401->1433/tcp sql1
Nyisson meg egy Bash-terminált Linuxon.
Kérje le az SQL Server 2019 (15.x) Linux tárolórendszerképét a Microsoft Container Registryből.
sudo docker pull mcr.microsoft.com/mssql/server:2019-latestA tárolólemezkép Dockerrel való futtatásához használja a következő parancsot:
sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' \ --name 'sql1' -p 1401:1433 \ -v sql1data:/var/opt/mssql \ -d mcr.microsoft.com/mssql/server:2019-latestFigyelem
A jelszónak az SQL Server alapértelmezett jelszóházirendetkell követnie. Alapértelmezés szerint a jelszónak legalább nyolc karakter hosszúnak kell lennie, és a következő négy készletből három karakterből kell állnia: nagybetűk, kisbetűk, 10 számjegyből és szimbólumokból. A jelszavak legfeljebb 128 karakter hosszúak lehetnek. Használjon olyan jelszavakat, amelyek a lehető legkomplexebbek és hosszúak.
Ez a parancs létrehoz egy SQL Server 2019 -tárolót (15.x) a Developer kiadással (alapértelmezett). Az SQL Server
1433portja a gazda gépen1401portként van kitéve. Az opcionális-v sql1data:/var/opt/mssqlparaméter létrehoz egysql1datanevű adatkötet-tárolót. Ez az SQL Server által létrehozott adatok megőrzésére szolgál.Fontos
Ez a példa egy adatkötet-tárolót használ a Dockeren belül. További információ: Sql Server-tárolólemezképek konfigurálása a Docker.
A tárolók megtekintéséhez használja a
docker psparancsot.sudo docker ps -aHa a
STATUSoszlopUpállapotot mutat, akkor az SQL Server fut a tárolóban, és figyeli aPORTSoszlopban megadott portot. Ha az SQL Server-tárolóhoz tartozóSTATUSoszlopbanExitedlátható, lásd a Az SQL Server Docker-tárolók hibaelhárításacímű témakört.$ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 941e1bdf8e1d mcr.microsoft.com/mssql/server/mssql-server-linux "/bin/sh -c /opt/m..." About an hour ago Up About an hour 0.0.0.0:1401->1433/tcp sql1
Nyisson meg egy Bash-terminált Linuxon.
Kérje le az SQL Server 2022 (16.x) Linux-tárolórendszerképet a Microsoft Container Registryből.
sudo docker pull mcr.microsoft.com/mssql/server:2022-latestA tárolólemezkép Dockerrel való futtatásához használja a következő parancsot:
sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' \ --name 'sql1' -p 1401:1433 \ -v sql1data:/var/opt/mssql \ -d mcr.microsoft.com/mssql/server:2022-latestFigyelem
A jelszónak az SQL Server alapértelmezett jelszóházirendetkell követnie. Alapértelmezés szerint a jelszónak legalább nyolc karakter hosszúnak kell lennie, és a következő négy készletből három karakterből kell állnia: nagybetűk, kisbetűk, 10 számjegyből és szimbólumokból. A jelszavak legfeljebb 128 karakter hosszúak lehetnek. Használjon olyan jelszavakat, amelyek a lehető legkomplexebbek és hosszúak.
Ez a parancs létrehoz egy SQL Server 2022 -tárolót (16.x) a Developer kiadással (alapértelmezett). Az SQL Server
1433portja a gazda gépen1401portként van kitéve. Az opcionális-v sql1data:/var/opt/mssqlparaméter létrehoz egysql1datanevű adatkötet-tárolót. Ez az SQL Server által létrehozott adatok megőrzésére szolgál.Fontos
Ez a példa egy adatkötet-tárolót használ a Dockeren belül. További információ: Sql Server-tárolólemezképek konfigurálása a Docker.
A tárolók megtekintéséhez használja a
docker psparancsot.sudo docker ps -aHa a
STATUSoszlopUpállapotot mutat, akkor az SQL Server fut a tárolóban, és figyeli aPORTSoszlopban megadott portot. Ha az SQL Server-tárolóhoz tartozóSTATUSoszlopbanExitedlátható, lásd a Az SQL Server Docker-tárolók hibaelhárításacímű témakört.$ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 941e1bdf8e1d mcr.microsoft.com/mssql/server/mssql-server-linux "/bin/sh -c /opt/m..." About an hour ago Up About an hour 0.0.0.0:1401->1433/tcp sql1
Nyisson meg egy Bash-terminált Linuxon.
Kérje le az SQL Server 2025 (17.x) Linux-tárolórendszerképet a Microsoft Container Registryből.
sudo docker pull mcr.microsoft.com/mssql/server:2025-latestA tárolólemezkép Dockerrel való futtatásához használja a következő parancsot:
sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' \ --name 'sql1' -p 1401:1433 \ -v sql1data:/var/opt/mssql \ -d mcr.microsoft.com/mssql/server:2025-latestFigyelem
A jelszónak az SQL Server alapértelmezett jelszóházirendetkell követnie. Alapértelmezés szerint a jelszónak legalább nyolc karakter hosszúnak kell lennie, és a következő négy készletből három karakterből kell állnia: nagybetűk, kisbetűk, 10 számjegyből és szimbólumokból. A jelszavak legfeljebb 128 karakter hosszúak lehetnek. Használjon olyan jelszavakat, amelyek a lehető legkomplexebbek és hosszúak.
Ez a parancs létrehoz egy SQL Server 2025 -tárolót (17.x) a Developer kiadással (alapértelmezett). Az SQL Server
1433portja a gazda gépen1401portként van kitéve. Az opcionális-v sql1data:/var/opt/mssqlparaméter létrehoz egysql1datanevű adatkötet-tárolót. Ez az SQL Server által létrehozott adatok megőrzésére szolgál.Fontos
Ez a példa egy adatkötet-tárolót használ a Dockeren belül. További információ: Sql Server-tárolólemezképek konfigurálása a Docker.
A tárolók megtekintéséhez használja a
docker psparancsot.sudo docker ps -aHa a
STATUSoszlopUpállapotot mutat, akkor az SQL Server fut a tárolóban, és figyeli aPORTSoszlopban megadott portot. Ha az SQL Server-tárolóhoz tartozóSTATUSoszlopbanExitedlátható, lásd a Az SQL Server Docker-tárolók hibaelhárításacímű témakört.$ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 941e1bdf8e1d mcr.microsoft.com/mssql/server/mssql-server-linux "/bin/sh -c /opt/m..." About an hour ago Up About an hour 0.0.0.0:1401->1433/tcp sql1
A rendszergazda (SA) jelszavának módosítása
A sa fiók rendszergazda a telepítés során létrehozott SQL Server-példányon. Az SQL Server-tároló létrehozása után a megadott MSSQL_SA_PASSWORD környezeti változó echo $MSSQL_SA_PASSWORD a tárolóban való futtatásával felderíthető. Biztonsági okokból módosítsa a sa jelszavát:
Válasszon erős jelszót a
sa-fiókhoz. A jelszónak az SQL Server alapértelmezett jelszóházirendetkell követnie. Alapértelmezés szerint a jelszónak legalább nyolc karakter hosszúnak kell lennie, és a következő négy készletből három karakterből kell állnia: nagybetűk, kisbetűk, 10 számjegyből és szimbólumokból. A jelszavak legfeljebb 128 karakter hosszúak lehetnek. Használjon olyan jelszavakat, amelyek a lehető legkomplexebbek és hosszúak.Az
docker exechasználatával futtassa az sqlcmd segédprogramot a jelszó Transact-SQL utasítással történő módosításához. Cserélje le<old-password>és<new-password>a saját jelszóértékére:Fontos
A
SA_PASSWORDkörnyezeti változó elavult. Használjon inkábbMSSQL_SA_PASSWORD.sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd \ -S localhost -U sa -P '<old-password>' \ -Q 'ALTER LOGIN sa WITH PASSWORD="<new-password>"'docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd ` -S localhost -U sa -P "<old-password>" ` -Q "ALTER LOGIN sa WITH PASSWORD='<new-password>'"
Biztonsági mentési fájl másolása a tárolóba
Ez az oktatóanyag a Microsoft SQL Wide World Importers mintaadatbázisait használja. Az alábbi lépésekkel töltse le és másolja a Wide World Importers adatbázis biztonsági mentési fájlját az SQL Server-tárolóba.
Először a
docker exechasználatával hozzon létre egy biztonsági mentési mappát. Az alábbi parancs létrehoz egy/var/opt/mssql/backupkönyvtárat az SQL Server-tárolóban.sudo docker exec -it sql1 mkdir /var/opt/mssql/backupEzután töltse le a WideWorldImporters-Full.bak fájlt a saját gazdagépére. Az alábbi parancsok a kezdőlapra vagy a felhasználói könyvtárra lépnek, és letöltik a biztonsági mentési fájlt
wwi.bak.cd ~ curl -L -o wwi.bak 'https://github.com/Microsoft/sql-server-samples/releases/download/wide-world-importers-v1.0/WideWorldImporters-Full.bak'A
docker cphasználatával másolja a biztonsági mentési fájlt a/var/opt/mssql/backupkönyvtár tárolójába.sudo docker cp wwi.bak sql1:/var/opt/mssql/backup
Az adatbázis visszaállítása
A biztonsági mentési fájl most már a tárolóban található. A biztonsági mentés visszaállítása előtt fontos ismerni a biztonsági másolatban található logikai fájlneveket és fájltípusokat. Az alábbi Transact-SQL parancsok ellenőrzik a biztonsági mentést, és végrehajtják a visszaállítást sqlcmd használatával a tárolóban.
Borravaló
Ez az oktatóanyag sqlcmd használ a tárolón belül, mivel a tároló előre telepítve van ezzel az eszközzel. Azonban Transact-SQL utasításokat a tárolón kívül más ügyféleszközökkel is futtathat, például a SQL Server bővítményt a Visual Studio Code-hoz vagy használhatja a SQL Server Management Studio-t Windows rendszeren az SQL Server kezelésére Linuxon. A csatlakozáshoz használja a 1433-ra leképezett gazdagépportot a tárolóban. Ebben a példában a gazdagép és a port localhost,1401 a gazdagépen, és távolról Host_IP_Address,1401.
Futtassa a tárolóban a sqlcmd parancsot, hogy listázza a mentésben található logikai fájlneveket és útvonalakat. Ez a
RESTORE FILELISTONLYTransact-SQL utasítással történik.sudo docker exec -it sql1 /opt/mssql-tools18/bin/sqlcmd -S localhost \ -U sa -P '<new-password>' \ -Q 'RESTORE FILELISTONLY FROM DISK = "/var/opt/mssql/backup/wwi.bak"' \ | tr -s ' ' | cut -d ' ' -f 1-2Az eredményeknek az alábbi kimenethez hasonlóan kell kinéznie:
LogicalName PhysicalName ------------------------------------------ WWI_Primary D:\Data\WideWorldImporters.mdf WWI_UserData D:\Data\WideWorldImporters_UserData.ndf WWI_Log E:\Log\WideWorldImporters.ldf WWI_InMemory_Data_1 D:\Data\WideWorldImporters_InMemory_Data_1Hívja meg a
RESTORE DATABASEparancsot az adatbázis tárolón belüli visszaállításához. Az előző lépésben adjon meg új elérési utakat az egyes fájlokhoz.sudo docker exec -it sql1 /opt/mssql-tools18/bin/sqlcmd \ -S localhost -U sa -P '<new-password>' \ -Q 'RESTORE DATABASE WideWorldImporters FROM DISK = "/var/opt/mssql/backup/wwi.bak" WITH MOVE "WWI_Primary" TO "/var/opt/mssql/data/WideWorldImporters.mdf", MOVE "WWI_UserData" TO "/var/opt/mssql/data/WideWorldImporters_userdata.ndf", MOVE "WWI_Log" TO "/var/opt/mssql/data/WideWorldImporters.ldf", MOVE "WWI_InMemory_Data_1" TO "/var/opt/mssql/data/WideWorldImporters_InMemory_Data_1"'Az eredményeknek az alábbi kimenethez hasonlóan kell kinéznie:
Processed 1464 pages for database 'WideWorldImporters', file 'WWI_Primary' on file 1. Processed 53096 pages for database 'WideWorldImporters', file 'WWI_UserData' on file 1. Processed 33 pages for database 'WideWorldImporters', file 'WWI_Log' on file 1. Processed 3862 pages for database 'WideWorldImporters', file 'WWI_InMemory_Data_1' on file 1. Converting database 'WideWorldImporters' from version 852 to the current version 869. Database 'WideWorldImporters' running the upgrade step from version 852 to version 853. Database 'WideWorldImporters' running the upgrade step from version 853 to version 854. Database 'WideWorldImporters' running the upgrade step from version 854 to version 855. Database 'WideWorldImporters' running the upgrade step from version 855 to version 856. Database 'WideWorldImporters' running the upgrade step from version 856 to version 857. Database 'WideWorldImporters' running the upgrade step from version 857 to version 858. Database 'WideWorldImporters' running the upgrade step from version 858 to version 859. Database 'WideWorldImporters' running the upgrade step from version 859 to version 860. Database 'WideWorldImporters' running the upgrade step from version 860 to version 861. Database 'WideWorldImporters' running the upgrade step from version 861 to version 862. Database 'WideWorldImporters' running the upgrade step from version 862 to version 863. Database 'WideWorldImporters' running the upgrade step from version 863 to version 864. Database 'WideWorldImporters' running the upgrade step from version 864 to version 865. Database 'WideWorldImporters' running the upgrade step from version 865 to version 866. Database 'WideWorldImporters' running the upgrade step from version 866 to version 867. Database 'WideWorldImporters' running the upgrade step from version 867 to version 868. Database 'WideWorldImporters' running the upgrade step from version 868 to version 869. RESTORE DATABASE successfully processed 58455 pages in 18.069 seconds (25.273 MB/sec).
A visszaállított adatbázis ellenőrzése
Futtassa a következő lekérdezést az adatbázisnevek listájának megjelenítéséhez a tárolóban:
sudo docker exec -it sql1 /opt/mssql-tools18/bin/sqlcmd \
-S localhost -U sa -P '<new-password>' \
-Q 'SELECT name FROM sys.databases'
Az adatbázisok listájában WideWorldImporters kell megjelennie.
Módosítás
Az alábbi lépéseket követve módosíthatja az adatbázist.
Lekérdezés futtatásával megtekintheti a
Warehouse.StockItemstábla 10 legfontosabb elemét.sudo docker exec -it sql1 /opt/mssql-tools18/bin/sqlcmd \ -S localhost -U sa -P '<new-password>' \ -Q 'SELECT TOP 10 StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems ORDER BY StockItemID'Látnia kell az elemazonosítók és -nevek listáját:
StockItemID StockItemName ----------- ----------------- 1 USB missile launcher (Green) 2 USB rocket launcher (Gray) 3 Office cube periscope (Black) 4 USB food flash drive - sushi roll 5 USB food flash drive - hamburger 6 USB food flash drive - hot dog 7 USB food flash drive - pizza slice 8 USB food flash drive - dim sum 10 drive variety pack 9 USB food flash drive - banana 10 USB food flash drive - chocolate barFrissítse az első elem leírását a következő
UPDATEutasítással:sudo docker exec -it sql1 /opt/mssql-tools18/bin/sqlcmd \ -S localhost -U sa -P '<new-password>' \ -Q 'UPDATE WideWorldImporters.Warehouse.StockItems SET StockItemName="USB missile launcher (Dark Green)" WHERE StockItemID=1; SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'A következő szöveghez hasonló kimenetnek kell megjelennie:
(1 rows affected) StockItemID StockItemName ----------- ------------------------------------ 1 USB missile launcher (Dark Green)
Új biztonsági mentés létrehozása
Miután visszaállította az adatbázist egy tárolóba, érdemes lehet rendszeresen adatbázis-biztonsági másolatokat létrehozni a futó tárolóban. A lépések az előző lépésekhez hasonló mintát követnek, de fordított sorrendben.
A
BACKUP DATABASETransact-SQL paranccsal hozzon létre adatbázis-biztonsági mentést a tárolóban. Ez az oktatóanyag létrehoz egy új biztonsági mentési fájltwwi_2.baka korábban létrehozott/var/opt/mssql/backupkönyvtárban.sudo docker exec -it sql1 /opt/mssql-tools18/bin/sqlcmd \ -S localhost -U sa -P '<new-password>' \ -Q "BACKUP DATABASE [WideWorldImporters] TO DISK = N'/var/opt/mssql/backup/wwi_2.bak' WITH NOFORMAT, NOINIT, NAME = 'WideWorldImporters-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"Az eredményeknek az alábbi kimenethez hasonlóan kell kinéznie:
10 percent processed. 20 percent processed. 30 percent processed. 40 percent processed. 50 percent processed. 60 percent processed. 70 percent processed. Processed 1200 pages for database 'WideWorldImporters', file 'WWI_Primary' on file 1. Processed 53096 pages for database 'WideWorldImporters', file 'WWI_UserData' on file 1. 80 percent processed. Processed 3865 pages for database 'WideWorldImporters', file 'WWI_InMemory_Data_1' on file 1. Processed 938 pages for database 'WideWorldImporters', file 'WWI_Log' on file 1. 100 percent processed. BACKUP DATABASE successfully processed 59099 pages in 25.056 seconds (18.427 MB/sec).Ezután másolja ki a biztonsági mentési fájlt a tárolóból, majd helyezze át a gépére.
cd ~ sudo docker cp sql1:/var/opt/mssql/backup/wwi_2.bak wwi_2.bak ls -l wwi*
A tárolt adatok használata
Amellett, hogy adatbázis-biztonsági mentéseket készít az adatok védelmére, adatkötet-tárolókat is használhat. Az oktatóanyag elején létrehozta a sql1 tárolót a -v sql1data:/var/opt/mssql paraméterrel. Az sql1data adatkötet tárolója a tároló eltávolítása után is megőrzi a /var/opt/mssql adatokat. Az alábbi lépések teljesen eltávolítják a sql1 tárolót, majd létrehoznak egy új tárolót, sql2, a tárolt adatokkal.
Állítsa le a
sql1tárolót.sudo docker stop sql1Távolítsa el a tárolót. Ez nem törli a korábban létrehozott
sql1dataadatkötet-tárolót és a benne tárolt adatokat.sudo docker rm sql1Hozzon létre egy új tárolót,
sql2, és használja újra asql1dataadatkötet-tárolót.sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' \ --name 'sql2' -e 'MSSQL_PID=Developer' -p 1401:1433 \ -v sql1data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latestA Wide World Importers adatbázis most már az új tárolóban van. Futtass egy lekérdezést az előző módosítás ellenőrzéséhez.
sudo docker exec -it sql2 /opt/mssql-tools/bin/sqlcmd \ -S localhost -U sa -P '<new-password>' \ -Q 'SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'A
sajelszó nem asql2tárolóhoz megadott jelszó,MSSQL_SA_PASSWORD=<password>. Az SQL Server összes adatát visszaállítottáksql1-ból, beleértve a korábban az oktatóanyagban módosított jelszót is. Az ilyen lehetőségek némelyikét a rendszer figyelmen kívül hagyja, mert visszaállítja az adatokat a /var/opt/mssql fájlban. Ezért a jelszó itt látható módon<new-password>.
Állítsa le a
sql1tárolót.sudo docker stop sql1Távolítsa el a tárolót. Ez nem törli a korábban létrehozott
sql1dataadatkötet-tárolót és a benne tárolt adatokat.sudo docker rm sql1Hozzon létre egy új tárolót,
sql2, és használja újra asql1dataadatkötet-tárolót.sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' \ --name 'sql2' -e 'MSSQL_PID=Developer' -p 1401:1433 \ -v sql1data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latestA Wide World Importers adatbázis most már az új tárolóban van. Futtass egy lekérdezést az előző módosítás ellenőrzéséhez.
sudo docker exec -it sql2 /opt/mssql-tools18/bin/sqlcmd \ -S localhost -U sa -P '<new-password>' \ -Q 'SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'A
sajelszó nem asql2tárolóhoz megadott jelszó,MSSQL_SA_PASSWORD=<password>. Az SQL Server összes adatát visszaállítottáksql1-ból, beleértve a korábban az oktatóanyagban módosított jelszót is. Az ilyen lehetőségek némelyikét a rendszer figyelmen kívül hagyja, mert visszaállítja az adatokat a /var/opt/mssql fájlban. Ezért a jelszó itt látható módon<new-password>.
Állítsa le a
sql1tárolót.sudo docker stop sql1Távolítsa el a tárolót. Ez nem törli a korábban létrehozott
sql1dataadatkötet-tárolót és a benne tárolt adatokat.sudo docker rm sql1Hozzon létre egy új tárolót,
sql2, és használja újra asql1dataadatkötet-tárolót.sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' \ --name 'sql2' -e 'MSSQL_PID=Developer' -p 1401:1433 \ -v sql1data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2022-latestA Wide World Importers adatbázis most már az új tárolóban van. Futtass egy lekérdezést az előző módosítás ellenőrzéséhez.
sudo docker exec -it sql2 /opt/mssql-tools18/bin/sqlcmd \ -S localhost -U sa -P '<new-password>' \ -Q 'SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'A
sajelszó nem asql2tárolóhoz megadott jelszó,MSSQL_SA_PASSWORD=<password>. Az SQL Server összes adatát visszaállítottáksql1-ból, beleértve a korábban az oktatóanyagban módosított jelszót is. Az ilyen beállításokat a rendszer figyelmen kívül hagyja a/var/opt/mssqladatainak visszaállítása miatt. Ezért a jelszó itt látható módon<new-password>.
Állítsa le a
sql1tárolót.sudo docker stop sql1Távolítsa el a tárolót. Ez nem törli a korábban létrehozott
sql1dataadatkötet-tárolót és a benne tárolt adatokat.sudo docker rm sql1Hozzon létre egy új tárolót,
sql2, és használja újra asql1dataadatkötet-tárolót.sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<password>' \ --name 'sql2' -e 'MSSQL_PID=Developer' -p 1401:1433 \ -v sql1data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2025-latestA Wide World Importers adatbázis most már az új tárolóban van. Futtass egy lekérdezést az előző módosítás ellenőrzéséhez.
sudo docker exec -it sql2 /opt/mssql-tools18/bin/sqlcmd \ -S localhost -U sa -P '<new-password>' \ -Q 'SELECT StockItemID, StockItemName FROM WideWorldImporters.Warehouse.StockItems WHERE StockItemID=1'A
sajelszó nem asql2tárolóhoz megadott jelszó,MSSQL_SA_PASSWORD=<password>. Az SQL Server összes adatát visszaállítottáksql1-ból, beleértve a korábban az oktatóanyagban módosított jelszót is. Az ilyen beállításokat a rendszer figyelmen kívül hagyja a/var/opt/mssqladatainak visszaállítása miatt. Ezért a jelszó itt látható módon<new-password>.
Figyelem
A jelszónak az SQL Server alapértelmezett jelszóházirendetkell követnie. Alapértelmezés szerint a jelszónak legalább nyolc karakter hosszúnak kell lennie, és a következő négy készletből három karakterből kell állnia: nagybetűk, kisbetűk, 10 számjegyből és szimbólumokból. A jelszavak legfeljebb 128 karakter hosszúak lehetnek. Használjon olyan jelszavakat, amelyek a lehető legkomplexebbek és hosszúak.
Következő lépés
Ebben az oktatóanyagban megtanulta, hogyan készíthet biztonsági másolatot egy adatbázisról Windows rendszeren, és hogyan helyezheti át egy tárolóban lévő SQL Server 2017 -et (14.x) futtató Linux-kiszolgálóra. Megtanulta, hogyan:
Ebben az oktatóanyagban megtanulta, hogyan készíthet biztonsági másolatot egy adatbázisról Windows rendszeren, és hogyan helyezheti át egy TÁROLÓBAN lévő SQL Server 2019 -et (15.x) futtató Linux-kiszolgálóra. Megtanulta, hogyan:
Ebben az oktatóanyagban megtanulta, hogyan készíthet biztonsági másolatot egy adatbázisról Windows rendszeren, és hogyan helyezheti át egy tárolóban lévő SQL Server 2022 -t (16.x) futtató Linux-kiszolgálóra. Megtanulta, hogyan:
Ebben az oktatóanyagban megtanulta, hogyan készíthet biztonsági másolatot egy adatbázisról Windows rendszeren, és hogyan helyezheti át egy tárolóban lévő SQL Server 2025 (17.x) rendszert futtató Linux-kiszolgálóra. Megtanulta, hogyan:
- SQL Server Linux-tárolólemezképek létrehozása.
- Másolja az SQL Server-adatbázis biztonsági másolatait egy tárolóba.
- Futtassa Transact-SQL utasításokat sqlcmd.
- Biztonsági másolatfájlokat hozhat létre és nyerhet ki egy tárolóból.
- Az adatmennyiség-tárolók használata az SQL Server éles adatainak tárolásához.
Ezután tekintse át a többi tárolókonfigurációt és hibaelhárítási forgatókönyvet:
Közreműködés az SQL dokumentációjában
Tudta, hogy saját maga szerkesztheti az SQL-tartalmakat? Ha így tesz, nem csak a dokumentáció fejlesztésében segít, hanem az oldal közreműködőjeként is jóváírást kap.
További információ: Microsoft Learn-dokumentáció szerkesztése.