sqlpackage je nástroj poskytovaný spoločnosťou Microsoft, ktorý umožňuje balenie a nasadzovanie databáz SQL Server. Pomocou tohto nástroja môžete vykonávať zálohovanie a obnovenie SQL Server databáz. Tu je niekoľko možností pre zálohovanie databázy pomocou sqlpackage:
- Zálohovanie celej databázy:
sqlpackage /a:Extract /ssn:<server_name> /sdn:<database_name> /tf:<backup_file.bacpac>
/a:Extract
– špecifikuje akciu extrakcie, čo v tomto prípade znamená zálohovanie./ssn
– špecifikuje názov SQL Server inštancie./sdn
– špecifikuje názov databázy, ktorú chcete zálohovať./tf
– špecifikuje cieľový súbor pre uloženie zálohy.
Zálohovanie určitej schémy alebo tabuľky:
sqlpackage /a:Extract /ssn:<server_name> /sdn:<database_name> /tf:<backup_file.bacpac> /sf:<source_schema>
/sf
– špecifikuje schému alebo tabuľku, ktorú chcete zálohovať.
Zálohovanie pomocou skriptu T-SQL:
sqlpackage /a:Script /ssn:<server_name> /sdn:<database_name> /sf:<source_schema> /tf:<backup_script.sql>
/a:Script
– specifikuje akci generování skriptu./tf
– specifikuje cílový soubor pro uložení skriptu.
- Dalšie možnosti:
/su
– špecifikuje užívateľské meno pre pripojenie k SQL Server./sp
– špecifikuje heslo pre pripojenie k SQL Server./tdn
– špecifikuje dočasný názov databázy.
Pri obnovovaní databázy môžete použiť opačnú akciu Deploy. Je dôležité zabezpečiť, že máte zodpovedajúce oprávnenie na vykonávanie záloh a obnovovanie databáz na SQL Serveri.
Pre export (zálohu) SQL Server databázy pomocou sqlpackage, môžete použiť akciu ExportData alebo Export. Nižšie sú príklady použitia oboch prístupov:
- Export pomocou akcie
ExportData
: Tato akcia slúži na zálohovanie dát z databázy.
sqlpackage /a:ExportData /ssn:<server_name> /sdn:<database_name> /tf:<backup_file.bacpac>
/a:ExportData
– špecifikuje akciu exportu dát./ssn
– špecifikuje názov SQL Server inštancie./sdn
– špecifikuje názov databázy, ktorú chcete exportovať./tf
– špecifikuje cieľový súbor pre uloženie exportovaných dát.
Export pomocou akcie Export: Táto akcia umožňuje export celej databázy.
sqlpackage /a:Export /ssn:<server_name> /sdn:<database_name> /tf:<backup_file.bacpac>
/a:Export
– špecifikuje akciu exportu celej databázy./ssn
– špecifikuje názov SQL Server inštancie./sdn
– špecifikuje názov databázy, ktorú chcete exportovať./tf
– špecifikuje cieľový súbor na uloženie exportovanej databázy.
Oba príkazy vytvoria súbor s príponou .bacpac, čo je formát pre balenie a nasadzovanie aplikácií na platforme Azure. Tento súbor môžete následne použiť na obnovu alebo migráciu databázy. Uistite sa, že máte dostatočné oprávnenia na vykonávanie exportu dát z databázy na SQL Serveri.
Príklad zálohovania:
#!/bin/bash
# Nastavenie premenných
server="dev.database.windows.net"database="Dev"
username="backupuser"
password="123"
# Set the output file path
output_file="/root/file.bacpac"
# Use sqlpackage to export data
sqlpackage /a:Export /ssn:$server /sdn:$database /su:$username /sp:$password /tf:$output_file
echo "Export to $output_file completed."
Odborník na kybernetickú bezpečnosť, správu Azure Cloud a VMware onprem. Využíva technológie, ako Checkmk a MRTG, na monitorovanie siete a zvyšovanie efektívnosti a bezpečnosti IT infraštruktúry. Kontakt: hasin(at)mhite.sk