Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Gilt für:SQL Server unter Linux
Dieses Bash-Skript installiert SQL Server 2022 (16.x) auf SUSE Linux Enterprise Server (SLES) ohne interaktive Eingabe. Es stellt Beispiele für die Installation von Datenbank-Engine, SQL Server-Befehlszeilentools und SQL Server-Agent bereit und führt Schritte nach der Installation aus. Optional können Sie die Volltextsuche installieren und einen Administratorbenutzer erstellen.
Hinweis
Ab SQL Server 2025 (17.x) wird SUSE Linux Enterprise Server (SLES) nicht unterstützt.
Wenn Sie kein Skript für die unbeaufsichtigte Installation benötigen, lässt sich SQL Server am schnellsten installieren, indem Sie die Schnellstartanleitung für SLES befolgen. Weitere Setupinformationen finden Sie im Leitfaden für die Installation von SQL Server unter Linux.
Voraussetzungen
- Sie benötigen mindestens 2 GB Arbeitsspeicher, um SQL Server für Linux auszuführen.
- Das Dateisystem muss XFS oder ext4 sein. Andere Dateisysteme wie BTRFS werden nicht unterstützt.
- Weitere Systemanforderungen finden Sie unter Systemanforderungen für SQL Server für Linux.
Wichtig
SQL Server erfordert libsss_nss_idmap0, die von den SLES-Standardrepositorys nicht bereitgestellt werden. Sie können dieses Paket aus dem SLES SDK installieren.
Beispielskript
In diesem Beispiel wird SQL Server 2019 (15.x) auf SLES v15 SP6 installiert. Wenn Sie eine andere Version von SQL Server oder SLES installieren möchten, ändern Sie die Microsoft-Repositorypfade entsprechend.
Speichern Sie das Beispielskript in einer Datei, und passen Sie es an. Ersetzen Sie die Variablenwerte im Skript. Sie können auch jede der Skriptvariablen als Umgebungsvariable festlegen, solange Sie die jeweilige Variable aus der Skriptdatei entfernen.
Wichtig
Die Umgebungsvariable SA_PASSWORD ist veraltet. Verwenden Sie stattdessen MSSQL_SA_PASSWORD.
Ihr Kennwort sollte der standardmäßigen Kennwortrichtlinie von SQL Server folgen. Ein Standardkennwort enthält mindestens acht Zeichen, die aus drei der folgenden vier Kategorien stammen müssen: Großbuchstaben, Kleinbuchstaben, Grundzahlen (0–9) und Symbole. Kennwörter können bis zu 128 Zeichen lang sein. Verwenden Sie möglichst lange und komplexe Kennwörter.
#!/bin/bash -e
# Use the following variables to control your install:
# Password for the SA user (required)
MSSQL_SA_PASSWORD='<password>'
# Product ID of the version of SQL Server you're installing
# Must be evaluation, developer, express, web, standard, enterprise, or your 25 digit product key
# Defaults to developer
MSSQL_PID='evaluation'
# Enable SQL Server Agent (recommended)
SQL_ENABLE_AGENT='y'
# Install SQL Server Full Text Search (optional)
# SQL_INSTALL_FULLTEXT='y'
# Create an additional user with sysadmin privileges (optional)
# SQL_INSTALL_USER='<Username>'
# SQL_INSTALL_USER_PASSWORD='<password>'
if [ -z $MSSQL_SA_PASSWORD ]
then
echo Environment variable MSSQL_SA_PASSWORD must be set for unattended install
exit 1
fi
echo Adding Microsoft repositories...
sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/15/mssql-server-2022.repo
sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/15/prod.repo
sudo zypper --gpg-auto-import-keys refresh
#Add the SLES v15 SP6 SDK to obtain libsss_nss_idmap0
sudo SUSEConnect -p sle-sdk/15.3/x86_64
echo Installing SQL Server...
sudo zypper install -y mssql-server
echo Running mssql-conf setup...
sudo MSSQL_SA_PASSWORD=$MSSQL_SA_PASSWORD \
MSSQL_PID=$MSSQL_PID \
/opt/mssql/bin/mssql-conf -n setup accept-eula
echo Installing mssql-tools and unixODBC developer...
sudo ACCEPT_EULA=Y zypper install -y mssql-tools unixODBC-devel
# Add SQL Server tools to the path by default:
echo Adding SQL Server tools to your path...
echo PATH="$PATH:/opt/mssql-tools/bin" >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
# Optional Enable SQL Server Agent:
if [ ! -z $SQL_ENABLE_AGENT ]
then
echo Enable SQL Server Agent...
sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true
fi
# Optional SQL Server Full Text Search installation:
if [ ! -z $SQL_INSTALL_FULLTEXT ]
then
echo Installing SQL Server Full-Text Search...
sudo zypper install -y mssql-server-fts
fi
# Configure firewall to allow TCP port 1433:
echo Configuring SuSEfirewall2 to allow traffic on port 1433...
sudo SuSEfirewall2 open INT TCP 1433
sudo SuSEfirewall2 stop
sudo SuSEfirewall2 start
# Example of setting post-installation configuration options
# Set trace flags 1204 and 1222 for deadlock tracing:
# echo Setting trace flags...
# sudo /opt/mssql/bin/mssql-conf trace flag 1204 1222 on
# Restart SQL Server after making configuration changes:
echo Restarting SQL Server...
sudo systemctl restart mssql-server
# Connect to server and get the version:
counter=1
errstatus=1
while [ $counter -le 5 ] && [ $errstatus = 1 ]
do
echo Waiting for SQL Server to start...
sleep 5s
/opt/mssql-tools/bin/sqlcmd \
-S localhost \
-U sa \
-P $MSSQL_SA_PASSWORD \
-Q "SELECT @@VERSION" 2>/dev/null
errstatus=$?
((counter++))
done
# Display error if connection failed:
if [ $errstatus = 1 ]
then
echo Cannot connect to SQL Server, installation aborted
exit $errstatus
fi
# Optional new user creation:
if [ ! -z $SQL_INSTALL_USER ] && [ ! -z $SQL_INSTALL_USER_PASSWORD ]
then
echo Creating user $SQL_INSTALL_USER
/opt/mssql-tools/bin/sqlcmd \
-S localhost \
-U sa \
-P $MSSQL_SA_PASSWORD \
-Q "CREATE LOGIN [$SQL_INSTALL_USER] WITH PASSWORD=N'$SQL_INSTALL_USER_PASSWORD', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=ON, CHECK_POLICY=ON; ALTER SERVER ROLE [sysadmin] ADD MEMBER [$SQL_INSTALL_USER]"
fi
echo Done!
Ausführen des Skripts
So führen Sie das Skript aus
Fügen Sie das Beispiel in Ihren bevorzugten Text-Editor ein, und speichern Sie es unter einem einprägsamen Namen wie z.B.
install_sql.sh.Passen Sie
MSSQL_SA_PASSWORD,MSSQL_PIDsowie alle weiteren Variablen an, die Sie ändern möchten.Markieren Sie das Skript als ausführbare Datei.
chmod +x install_sql.shFühren Sie das Skript aus.
./install_sql.sh
Grundlegendes zum Skript
Das Bash-Skript beginnt mit dem Festlegen einiger Variablen. Dabei kann es sich wie im Beispiel um Skriptvariablen oder um Umgebungsvariablen handeln. Für das Skript ist die MSSQL_SA_PASSWORD Variable zum Installieren von SQL Server erforderlich. Das Skript verwendet benutzerdefinierte Variablen für die anderen Variablen.
Das Beispielskript führt folgende Schritte aus:
Es importiert die öffentlichen Microsoft-GPG-Schlüssel.
Es registriert die Microsoft-Repositorys für SQL Server und die Befehlszeilentools.
Es aktualisiert die lokalen Repositorys.
Installieren Sie SQL Server.
Es konfiguriert SQL Server mit dem
MSSQL_SA_PASSWORDund akzeptiert automatisch den Endbenutzer-Lizenzvertrag.Es akzeptiert automatisch den Endbenutzer-Lizenzvertrag für die SQL Server-Befehlszeilentools, installiert sie und installiert das
unixODBC-devel-Paket.Es fügt die SQL Server-Befehlszeilentools zum Pfad hinzu, um die Verwendung zu vereinfachen.
Aktivieren des SQL Server-Agents, wenn die Skriptvariable
SQL_ENABLE_AGENTfestgelegt ist. Standardmäßig ist diese aktiviert.Es installiert optional die SQL Server-Volltextsuche, wenn die Variable
SQL_INSTALL_FULLTEXTfestgelegt ist.Es entsperrt Port 1433 für TCP in der Systemfirewall – dies ist erforderlich, um aus einem anderen System eine Verbindung mit SQL Server herzustellen.
Optional können Ablaufverfolgungsflags für die Verfolgung von Deadlocks gesetzt werden (dazu müssen die Zeilen auskommentiert werden).
SQL Server ist jetzt installiert. Starten Sie den Prozess neu, um ihn betriebsbereit zu machen.
Das Skript überprüft, ob SQL Server ordnungsgemäß installiert ist und blendet dabei Fehlermeldungen aus.
Es erstellt einen neuen Serveradministratorbenutzer, wenn
SQL_INSTALL_USERundSQL_INSTALL_USER_PASSWORDfestgelegt sind.
Unbeaufsichtigtes Installieren
Vereinfachen Sie mehrere unbeaufsichtigte Installationen, indem Sie ein eigenständiges Bash-Skript erstellen, das die richtigen Umgebungsvariablen festlegt. Sie können jede der Variablen entfernen, die das Beispielskript verwendet, und sie in Ihr eigenes Bash-Skript einfügen.
#!/bin/bash
export MSSQL_SA_PASSWORD='<password>'
export MSSQL_PID='evaluation'
export SQL_ENABLE_AGENT='y'
export SQL_INSTALL_USER='<Username>'
export SQL_INSTALL_USER_PASSWORD='<password>'
Achtung
Ihr Kennwort sollte der standardmäßigen Kennwortrichtlinie von SQL Server folgen. Ein Standardkennwort enthält mindestens acht Zeichen, die aus drei der folgenden vier Kategorien stammen müssen: Großbuchstaben, Kleinbuchstaben, Grundzahlen (0–9) und Symbole. Kennwörter können bis zu 128 Zeichen lang sein. Verwenden Sie möglichst lange und komplexe Kennwörter.
Führen Sie dann das Bash-Skript wie folgt aus:
. ./my_script_name.sh