Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik:SQL Server Linux rendszeren
Ez a cikk a Linux rendszeren vagy Linux-tárolóban futó SQL Server hibaelhárítását ismerteti. A Linux rendszeren futó SQL Server hibaelhárítása során ne felejtse el áttekinteni a támogatott funkciókat és az ismert korlátozásokat:
- Kibocsátási megjegyzések linuxos SQL Server 2025-höz
- A SQL Server 2022 Linux változatának kiadási megjegyzései
- Kibocsátási megjegyzések linuxos SQL Server 2019-hez
- Kibocsátási megjegyzések linuxos SQL Server 2017-hez
A gyakori kérdésekre adott válaszokért tekintse meg a linuxos SQL Server gyakori kérdéseket.
Csatlakozási hibák elhárítása
Ha nehézségei vannak a Linux SQL Server-példányhoz való csatlakozással, néhány dolgot ellenőriznie kell.
Ha nem tud helyileg
localhostcsatlakozni a használatával , próbálja meg inkább a 127.0.0.1 IP-címet használni. Lehetséges, hogy nincslocalhostmegfelelően leképezve erre a címre.Ellenőrizze, hogy a kiszolgáló neve vagy IP-címe elérhető-e az ügyfélgépről.
Az Ubuntu gép IP-címének megkereséséhez futtassa a
ifconfigparancsot az alábbi példában látható módon:sudo ifconfig eth0 | grep 'inet addr'A Red Hat esetében az
ip addralábbi példában látható parancsot használhatja:sudo ip addr show eth0 | grep "inet"Jótanács
A technika alól az egyik kivétel az Azure-beli virtuális gépekre vonatkozik. Azure-beli virtuális gépek esetén keresse meg a virtuális gép nyilvános IP-címét a Azure Portal.
Ha van, ellenőrizze, hogy megnyitotta-e az SQL Server portot (alapértelmezés szerint 1433) a tűzfalon.
Azure-beli virtuális gépek esetén ellenőrizze, hogy rendelkezik-e hálózati biztonsági csoportra vonatkozó szabállyal az alapértelmezett SQL Server porthoz.
Ellenőrizze, hogy a felhasználónév és a jelszó nem tartalmaz-e elírásokat, szóközöket vagy helytelen kis- és nagybetűket.
Próbálja meg explicit módon beállítani a protokollt és a portszámot a kiszolgáló nevével, az alábbi példához hasonlóan:
tcp:servername,1433.A hálózati kapcsolati problémák csatlakozási hibákat és időtúllépéseket is okozhatnak. A kapcsolati adatok és a hálózati kapcsolat ellenőrzése után próbálja meg újra a kapcsolatot.
Az SQL Server szolgáltatás kezelése
A következő szakasz bemutatja, hogyan kezelheti a SQL Server Linux-tárolók végrehajtását. A Linux-szolgáltatások kezeléséhez lásd: SQL Server szolgáltatások indítása, leállítása és újraindítása Linux rendszeren.
A SQL Server Linux-tároló végrehajtásának kezelése
A legutóbb létrehozott SQL Server Linux-tároló állapotát és tárolóazonosítóját a következő parancs futtatásával kaphatja meg (az azonosító az CONTAINER ID oszlop alatt található):
sudo docker ps -l
Szükség szerint leállíthatja vagy újraindíthatja az SQL Server szolgáltatást a következő parancsokkal:
sudo docker stop <container ID>
sudo docker restart <container ID>
Jótanács
A Linux-tárolókra vonatkozó további hibaelhárítási tippekért lásd: SQL Server Docker-tárolók hibaelhárítása.
Hozzáférés a naplófájlokhoz
A SQL Server adatbázismotor a Linux- és a tárolótelepítésekben is naplózik a /var/opt/mssql/log/errorlog fájlba. A könyvtár böngészéséhez szuperfelhasználói módban kell lennie.
A telepítő naplót készít ide: /var/opt/mssql/setup-<time stamp representing time of install> Az errorlog fájlokat az alábbi módon nézheti meg bármilyen UTF-16 kompatibilis eszközzel, mint például a vim vagy a cat használatával:
sudo cat errorlog
Ha szeretné, a fájlokat UTF-8 formátumba is konvertálhatja, hogy többé-kevésbé olvashassa őket a következő paranccsal:
sudo iconv -f UTF-16LE -t UTF-8 <errorlog> -o <output errorlog file>
Bővített események
A kiterjesztett események egy SQL-paranccsal kérdezhetők le. További információ: Kiterjesztett események.
Összeomlási memória-dumpok
Keressen memóriaképeket a naplókönyvtárban Linux rendszeren. Ellenőrizze a könyvtárban a /var/opt/mssql/log Linux Core-memóriaképeket (.tar.gz2 extension) vagy az SQL minidumpokat (.mdmp extension).
Például az alapvető memóriaképek megtekintéséhez:
sudo ls /var/opt/mssql/log | grep .tar.gz2
SQL-memóriaképek esetén használja ezt a szkriptet:
sudo ls /var/opt/mssql/log | grep .mdmp
Az SQL Server indítása minimális konfigurációban vagy egyfelhasználós módban
Az SQL Server indítása minimális konfigurációs módban
Ez a mód akkor hasznos, ha egy konfigurációs érték beállítása (például a memória túlterhelése) megakadályozza a kiszolgáló indítását.
sudo -u mssql /opt/mssql/bin/sqlservr -f
SQL Server indítása egyfelhasználós módban
Előfordulhat, hogy az SQL Server egy példányát egyfelhasználós módban kell elindítania az indítási beállítással -m. További információ: Indítási paraméterek. Előfordulhat például, hogy módosítani szeretné a kiszolgáló konfigurációs beállításait, vagy helyreállítani egy sérült master adatbázist vagy más rendszeradatbázist.
A következő szkripttel például elindíthatja SQL Server egyfelhasználós módban:
sudo -u mssql /opt/mssql/bin/sqlservr -m
Ez a szkript egyfelhasználós módban indítja el SQL Server a következővel:
sudo -u mssql /opt/mssql/bin/sqlservr -m sqlcmd
A jövőbeni indítási problémák elkerülése érdekében mindig indítsa el SQL Server Linuxon mssql a felhasználóval. Például: sudo -u mssql /opt/mssql/bin/sqlservr [STARTUP OPTIONS]
Ha véletlenül elindítja az SQL Server szolgáltatást egy másik felhasználóval, vissza kell változtatnia az SQL Server adatbázisfájlok tulajdonjogát a mssql felhasználóra, mielőtt elindítaná az SQL Servert a systemd rendszerrel. Ha például az összes /var/opt/mssql adatbázisfájl tulajdonjogát a felhasználóra mssql szeretné módosítani, futtassa a következő parancsot:
chown -R mssql:mssql /var/opt/mssql/
Rendszeradatbázisok újraépítése
Végső megoldásként dönthet úgy, hogy az master és model adatbázisokat visszaállítja az alapértelmezett verziókra.
Figyelmeztetés
Ez a folyamat veszélyes, mert törölheti az összes konfigurált SQL Server rendszeradatot , beleértve a felhasználói adatbázisokkal kapcsolatos információkat is (de magukat a felhasználói adatbázisokat nem).
Ezt követően csatolnia kell a felhasználói adatbázisokat a példányhoz. Törli a rendszeradatbázisokban tárolt egyéb információkat is, többek között:
- adatbázis-főkulcs (DMK) adatai
- a betöltött tanúsítványok
master - a fiók jelszava
sa - Munkával kapcsolatos információk
msdb - Adatbázis Levelezési információk innen:
msdb -
sp_configurebeállítások
A transzparens adattitkosítással (TDE) titkosított felhasználói adatbázisokat csak akkor csatolhatja újra, ha a tanúsítványokról és a titkos kulcsokról is biztonsági másolatot készítenek.
Csak akkor használja ezeket a lépéseket, ha tisztában van a következményekkel.
SQL Server adatbázismotor leállítása
sudo systemctl stop mssql-serverFuttassa
sqlservra következő paraméterrelforce-setup:sudo -u mssql /opt/mssql/bin/sqlservr --force-setupA jövőbeni indítási problémák elkerülése érdekében mindig indítsa el SQL Server Linuxon
mssqla felhasználóval.A "Helyreállítás befejeződött" üzenet megjelenése után nyomja le a Ctrl+C billentyűkombinációt. Ez leállítja a SQL Server.
Konfigurálja újra a jelszót
sa.sudo /opt/mssql/bin/mssql-conf set-sa-passwordFigyelmeztetés
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.
Indítsa el az SQL Servert, és konfigurálja újra a kiszolgálót, beleértve a felhasználói adatbázisok visszaállítását vagy újbóli csatolását.
sudo systemctl start mssql-server
A teljesítmény javítása
Számos tényező befolyásolja a teljesítményt, beleértve az adatbázis kialakítását, a hardvert és a számítási feladatokat. Ha javítani szeretné a teljesítményt, tekintse át a Linux rendszeren futó SQL Server teljesítménybeli ajánlott eljárásait és konfigurációs irányelveit. Ezután fedezze fel a teljesítményproblémák elhárításához rendelkezésre álló eszközöket.
- A teljesítmény figyelése a Lekérdezéstár segítségével
- rendszer dinamikus felügyeleti nézetei
- Teljesítmény irányítópult az SQL Server Management Studióban
Gyakori problémák
Nem tud csatlakozni a távoli SQL Server példányhoz.
Tekintse meg a Csatlakozás Linux rendszeren SQL Server című cikk hibaelhárítási szakaszát.
A következő hibaüzenet jelenik meg:
ERROR: Hostname must be 15 characters or less.Ez egy ismert probléma, amely akkor fordul elő, ha a SQL Server csomagot telepíteni próbáló gép neve 15 karakternél hosszabb. Jelenleg nincs más megoldás, mint a gép nevének megváltoztatása. Ezt úgy teheti meg, hogy szerkeszti mind
/etc/hostnamea/etc/hosts, módosítja a gazdagépnevet, menti az egyes fájlokat, és újraindítja a számítógépet.A rendszergazdai (
sa) jelszót alaphelyzetbe kell állítani, ami ideiglenesen leállítja az SQL Server szolgáltatást.Ha elfelejti a jelszót
sa, vagy más okból vissza kell állítania, kövesse az alábbi lépéseket.Jelentkezzen be a gazdagép-terminálra, futtassa a következő parancsokat, és kövesse az utasításokat a jelszó visszaállításához
sa:sudo systemctl stop mssql-server sudo /opt/mssql/bin/mssql-conf setupFigyelmeztetés
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.
A jelszavak speciális karakterei hibákat vagy bejelentkezési hibákat okozhatnak.
Ha bizonyos karaktereket használ a SQL Server jelszóban, előfordulhat, hogy fordított perjellel kell feloldania őket, amikor a Linux parancssorban használja őket. Például a dollárjelet (
$) kell feloldania, amikor terminálparancsban/parancsértelmezőben használja:Nem működik:
sudo sqlcmd -S myserver -U sa -P Test$$Működik:
sqlcmd -S myserver -U sa -P Test\$\$
Kapcsolódó tartalom
Segítség kérése
- Ötletek az SQL-hez: Javaslatai vannak az SQL Server fejlesztésére?
- Microsoft Q &A (SQL Server)
- DBA Stack Exchange (sql-server címke): Sql Serverrel kapcsolatos kérdések
- Stack Overflow (tag sql-server): Válaszok az SQL fejlesztési kérdéseire
- Microsoft SQL Server licencfeltételek és információk
- Támogatási lehetőségek üzleti felhasználók számára
- További SQL Server-súgó és visszajelzés
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.