在Ubuntu上管理SQL Server日志可以通過以下幾種方法進行:
SIMPLE
,此模式下事務日志會自動截斷,僅保留最小恢復信息。CREATE DATABASE [TestDB] ON PRIMARY (NAME = TestDB_Data, FILENAME = '/var/opt/mssql/data/TestDB.mdf')
LOG ON (NAME = TestDB_Log, FILENAME = '/var/opt/mssql/data/TestDB.ldf')
ALTER DATABASE [TestDB] SET RECOVERY SIMPLE;
tail
命令實時跟蹤日志文件的變化。tail -f /var/opt/mssql/data/YourDB.ldf
lnav
進行更結構化的日志文件監控。sudo apt install lnav
lnav /var/opt/mssql/data/YourDB.ldf
BACKUP LOG
命令進行日志截斷。BACKUP LOG YourDB TO DISK = 'NUL';
DBCC SHRINKFILE
命令收縮日志文件。DBCC SHRINKFILE (YourDB_Log, 1);
注意:SQL Server 2012及以上版本需使用 ALTER DATABASE
命令進行日志收縮。sudo apt-get install rsyslog
sudo systemctl restart rsyslog
sudo apt-get install logrotate
sudo logrotate -f /etc/logrotate.conf
ALTER DATABASE [YourDB] SET AUTO_SHRINK ON;
FULL
恢復模式,并通過定時日志備份和收縮管理空間。以上方法可以幫助您在Ubuntu上有效地管理SQL Server日志,確保數據庫的高效運行和數據的安全性。