Ansluta och fråga Azure SQL Edge
Viktigt!
Azure SQL Edge dras tillbaka den 30 september 2025. Mer information och migreringsalternativ finns i meddelandet Om pensionering.
Kommentar
Azure SQL Edge stöder inte längre ARM64-plattformen.
När du har distribuerat en container i Azure SQL Edge kan du ansluta till databasmotorn från någon av följande platser:
- Inuti containern
- Från en annan Docker-container som körs på samma värd
- Från värddatorn
- Från alla andra klientdatorer i nätverket
Verktyg för att ansluta till Azure SQL Edge
Du kan ansluta till en instans av Azure SQL Edge-instansen från något av följande vanliga verktyg:
- sqlcmd: sqlcmd-klientverktyg ingår redan i containeravbildningen av Azure SQL Edge. Om du ansluter till en container som körs med ett interaktivt bash-gränssnitt kan du köra verktygen lokalt. SQL-klientverktyg är inte tillgängliga på ARM64-plattformen.
- SQL Server Management Studio
- Azure Data Studio
- Visual Studio Code
Om du vill ansluta till en Azure SQL Edge-databasmotor från en nätverksdator behöver du följande:
IP-adress eller nätverksnamn för värddatorn: Det här är värddatorn där Azure SQL Edge-containern körs.
Portmappning för Azure SQL Edge-containervärd: Det här är mappningen för Docker-containerporten till en port på värden. I containern mappas Azure SQL Edge alltid till port 1433. Du kan ändra detta om du vill. Om du vill ändra portnumret uppdaterar du Alternativen för att skapa containrar för Azure SQL Edge-modulen i Azure IoT Edge. I följande exempel mappas port 1433 på containern till port 1600 på värden.
{ "PortBindings": { "1433/tcp": [ { "HostPort": "1600" } ] } }
SA-lösenord för Azure SQL Edge-instansen: Det här är det värde som anges för
MSSQL_SA_PASSWORD
miljövariabeln under distributionen av Azure SQL Edge.
Ansluta till databasmotorn inifrån containern
SQL Server-kommandoradsverktygen ingår i containeravbildningen av Azure SQL Edge. Om du ansluter till containern med en interaktiv kommandotolk kan du köra verktygen lokalt. SQL-klientverktyg är inte tillgängliga på ARM64-plattformen.
docker exec -it
Använd kommandot för att starta ett interaktivt bash-gränssnitt i containern som körs. I följande exempele69e056c702d
är container-ID:t.docker exec -it e69e056c702d /bin/bash
Dricks
Du behöver inte alltid ange hela container-ID:t. Du behöver bara ange tillräckligt med tecken för att identifiera det unikt. I det här exemplet kanske det räcker att använda
e6
ellere69
, i stället för det fullständiga ID:t.När du är inne i containern ansluter du lokalt med sqlcmd. sqlcmd finns inte i sökvägen som standard, så du måste ange den fullständiga sökvägen.
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '<YourPassword>'
När du är klar med sqlcmd skriver du
exit
.När du är klar med den interaktiva kommandotolken skriver du
exit
. Containern fortsätter att köras när du har avslutat det interaktiva bash-gränssnittet.
Ansluta till Azure SQL Edge från en annan container på samma värd
Eftersom två containrar som körs på samma värd finns i samma Docker-nätverk kan du enkelt komma åt dem med hjälp av containernamnet och portadressen för tjänsten. Om du till exempel ansluter till instansen av Azure SQL Edge från en annan Python-modul (container) på samma värd kan du använda en anslutningssträng som liknar följande. (Det här exemplet förutsätter att Azure SQL Edge är konfigurerat för att lyssna på standardporten.)
import pyodbc
server = 'MySQLEdgeContainer' # Replace this with the actual name of your SQL Edge Docker container
username = 'sa' # SQL Server username
password = '<password>' # Replace this with the actual SA password from your deployment
database = 'MyEdgeDatabase' # Replace this with the actual database name from your deployment. If you do not have a database created, you can use Master database.
db_connection_string = "Driver={ODBC Driver 17 for SQL Server};Server=" + server + ";Database=" + database + ";UID=" + username + ";PWD=" + password + ";"
conn = pyodbc.connect(db_connection_string, autocommit=True)
Ansluta till Azure SQL Edge från en annan nätverksdator
Du kanske vill ansluta till instansen av Azure SQL Edge från en annan dator i nätverket. Det gör du genom att använda IP-adressen för Docker-värden och värdporten som Azure SQL Edge-containern mappas till. Om IP-adressen för Docker-värden till exempel är 192.168.2.121
och Azure SQL Edge-containern mappas till värdport 1600 blir serveradressen för instansen av Azure SQL Edge 192.168.2.121,1600
. Det uppdaterade Python-skriptet är:
import pyodbc
server = '192.168.2.121,1600' # Replace this with the actual name or IP address of your SQL Edge Docker container
username = 'sa' # SQL Server username
password = '<password>' # Replace this with the actual SA password from your deployment
database = 'MyEdgeDatabase' # Replace this with the actual database name from your deployment. If you do not have a database created, you can use Master database.
db_connection_string = "Driver={ODBC Driver 17 for SQL Server};Server=" + server + ";Database=" + database + ";UID=" + username + ";PWD=" + password + ";"
conn = pyodbc.connect(db_connection_string, autocommit=True)
Information om hur du ansluter till en instans av Azure SQL Edge med hjälp av SQL Server Management Studio som körs på en Windows-dator finns i SQL Server Management Studio.
Information om hur du ansluter till en instans av Azure SQL Edge med hjälp av Visual Studio Code på en Windows-, macOS- eller Linux-dator finns i Visual Studio Code.
Information om hur du ansluter till en instans av Azure SQL Edge med hjälp av Azure Data Studio på en Windows-, macOS- eller Linux-dator finns i Azure Data Studio.