Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server op Linux
Met dit bash-voorbeeldscript wordt SQL Server 2022 (16.x) geïnstalleerd op SUSE Linux Enterprise Server (SLES) zonder interactieve invoer. Het bevat voorbeelden van het installeren van de Database Engine, de opdrachtregelprogramma's van SQL Server, SQL Server Agent en het uitvoeren van stappen na de installatie. U kunt desgewenst zoeken in volledige tekst installeren en een gebruiker met beheerdersrechten maken.
Opmerking
Vanaf SQL Server 2025 (17.x) wordt SUSE Linux Enterprise Server (SLES) niet ondersteund.
Als u geen installatiescript zonder toezicht nodig hebt, kunt u SQL Server het snelst installeren door de quickstart voor SLESte volgen. Zie Installatierichtlijnen voor SQL Server op Linuxvoor andere installatie-informatie.
Voorwaarden
- U hebt ten minste 2 GB geheugen nodig om SQL Server uit te voeren op Linux.
- Het bestandssysteem moet XFS of ext4 zijn. Andere bestandssystemen, zoals BTRFS, worden niet ondersteund.
- Zie Systeemvereisten voor SQL Server op Linuxvoor andere systeemvereisten.
Belangrijk
SQL Server vereist libsss_nss_idmap0, die de standaard-SLES-opslagplaatsen niet bieden. U kunt dit pakket installeren vanuit de SLES SDK.
Voorbeeldscript
In dit voorbeeld wordt SQL Server 2019 (15.x) geïnstalleerd op SLES v15 SP6. Als u een andere versie van SQL Server of SLES wilt installeren, wijzigt u de paden van de Microsoft-opslagplaats dienovereenkomstig.
Sla het voorbeeldscript op in een bestand en pas het vervolgens aan. Vervang de variabelewaarden in het script. U kunt ook een van de scriptvariabelen instellen als omgevingsvariabelen, zolang u ze uit het scriptbestand verwijdert.
Belangrijk
De omgevingsvariabele SA_PASSWORD is afgeschaft. Gebruik in plaats daarvan MSSQL_SA_PASSWORD.
Uw wachtwoord moet voldoen aan het standaard wachtwoordbeleid voor SQL Server. Standaard moet het wachtwoord ten minste acht tekens lang zijn en tekens bevatten uit drie van de volgende vier sets: hoofdletters, kleine letters, basis-10 cijfers en symbolen. Wachtwoorden mogen maximaal 128 tekens lang zijn. Gebruik wachtwoorden die zo lang en complex mogelijk zijn.
#!/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!
Het script uitvoeren
Het script uitvoeren:
Plak het voorbeeld in uw favoriete teksteditor en sla het op met een gedenkwaardige naam, zoals
install_sql.sh.Pas
MSSQL_SA_PASSWORD,MSSQL_PIDen een van de andere variabelen die u wilt wijzigen aan.Markeer het script als uitvoerbaar.
chmod +x install_sql.shVoer het script uit.
./install_sql.sh
Het script begrijpen
Het bash-script begint met het instellen van een paar variabelen. Deze variabelen kunnen scriptvariabelen zijn, zoals het voorbeeld of omgevingsvariabelen. Voor het script is de MSSQL_SA_PASSWORD variabele vereist om SQL Server te installeren. Het script maakt gebruik van aangepaste variabelen voor de andere variabelen.
Het voorbeeldscript voert de volgende stappen uit:
Importeer de openbare Microsoft GPG-sleutels.
Registreer de Microsoft-opslagplaatsen voor SQL Server en de opdrachtregelprogramma's.
Werk de lokale opslagplaatsen bij.
Installeer SQL Server.
Configureer SQL Server met de
MSSQL_SA_PASSWORDen accepteer automatisch de End-User gebruiksrechtovereenkomst.Accepteer automatisch de End-User gebruiksrechtovereenkomst voor de opdrachtregelprogramma's van SQL Server, installeer deze en installeer het
unixODBC-devel-pakket.Voeg de opdrachtregelprogramma's van SQL Server toe aan het pad voor gebruiksgemak.
Schakel de SQL Server-agent in als de scriptvariabele
SQL_ENABLE_AGENTis ingesteld, standaard ingeschakeld.Optioneel installeer SQL Server Full-Text zoekfunctie, als de variabele
SQL_INSTALL_FULLTEXTis ingesteld.Blokkering van poort 1433 voor TCP op de systeemfirewall opheffen die nodig is om vanaf een ander systeem verbinding te maken met SQL Server.
U kunt eventueel traceringsvlaggen instellen voor deadlock tracing (hiervoor moet u de regels van commentaar ontdoen).
SQL Server is nu geïnstalleerd. Start het proces opnieuw om het operationeel te maken.
Controleer of SQL Server correct is geïnstalleerd, zodat u foutberichten verbergt.
Maak een nieuwe serverbeheerder als
SQL_INSTALL_USERenSQL_INSTALL_USER_PASSWORDbeide zijn ingesteld.
Installatie zonder toezicht
Vereenvoudig meerdere installaties zonder toezicht door een zelfstandig bash-script te maken waarmee de juiste omgevingsvariabelen worden ingesteld. U kunt alle variabelen verwijderen die door het voorbeeldscript worden gebruikt en deze in uw eigen bash-script plaatsen.
#!/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>'
Voorzichtigheid
Uw wachtwoord moet voldoen aan het standaard wachtwoordbeleid voor SQL Server. Standaard moet het wachtwoord ten minste acht tekens lang zijn en tekens bevatten uit drie van de volgende vier sets: hoofdletters, kleine letters, basis-10 cijfers en symbolen. Wachtwoorden mogen maximaal 128 tekens lang zijn. Gebruik wachtwoorden die zo lang en complex mogelijk zijn.
Voer vervolgens het bash-script als volgt uit:
. ./my_script_name.sh