SQLServer中,大表的數據刪除操作,單次刪除和批量多次刪除產生的事務日誌的差別
1,應用場景 SQLServer中一個大表(測試環境千萬級,實際情況下會更多,達到10億級),刪除其中大部分數據。然後測試分批多次刪除和一次性全部刪除產生的transaction log的日誌大小的問題。 另:受限於相關的表做了複製分發,因此無法通過備份部分數據後truncate table的方式來實現,也無法通過新建一個表,通過rename的方式來交換實現,這兩種方式不
昵稱 MSSQL123
貢獻者18
粉絲0
1,應用場景 SQLServer中一個大表(測試環境千萬級,實際情況下會更多,達到10億級),刪除其中大部分數據。然後測試分批多次刪除和一次性全部刪除產生的transaction log的日誌大小的問題。 另:受限於相關的表做了複製分發,因此無法通過備份部分數據後truncate table的方式來實現,也無法通過新建一個表,通過rename的方式來交換實現,這兩種方式不
昵稱 MSSQL123
從一個簡單的SQL來看,CPU主頻對計算密集型SQL執行速度影響的差別,測試語句有三個特點:簡單SQL,計算密集型SQL,循環多次執行來放大執行時間 1,構造一個簡單的插入語句SQL 2,通過隨機排序,來模擬計算密集型操作 3,通過循環來放大執行時間 完全一樣的SQL: 10年前的4代i7,老掉牙的PC級CPU了,但是主頻高,3.6GHz主頻的CPU,2秒鐘跑完 5年前的Xeon E5620,服
昵稱 MSSQL123
SQL Server的Always on環境的備份規則設置比較混亂,加上一個copy_only備份,更是亂上加亂,copy_only備份實在極少的特殊情況下使用的備份,企業級日常備份,不可能用copy_only備份的,因此這裏不討論copy_only備份。 Backup preference有多重設置,企業級生產環境保持默認就可以,這裏以默認設置為例 1、不管怎麼設置,正常的數據庫備份(fu
昵稱 MSSQL123
Review某個SQLServer的生產環境的errolog的時候,無意中發現這麼一條日誌,意思是過多的VLF文件,會影響數據庫的啓動速度和日誌備份效率。 Database *** has more than 10000 virtual log files which is excessive. Too many virtual log files can cause long startup
昵稱 MSSQL123
原文地址:https://www.sqlshack.com/suspend-and-resume-data-movement-in-sql-server-always-on-availability-groups/ 在關於SQLServer2016AlwaysOn的第26篇文章中,我們將會討論AlwaysOn數據庫副本之間的掛起和恢復流程 要求 我們可以配置SQL
昵稱 MSSQL123
原文地址:https://www.sqlshack.com/apply-sql-server-patches-or-cumulative-updates-in-sql-server-always-on-availability-groups/ 在本系列關於 SQL Server 始終在線可用性組的第 32 篇文章中,我們將討論為 AG 複製實例應用服務包或累積更新包的過程。 SQL Serv
昵稱 MSSQL123
前兩天某SQLServer服務器斷斷續續出現性能問題,綜合排查之後懷疑是job定時任務引起的,於是查了一下job的schedule和最近一次執行情況。 大部分job的schedule都沒有問題,由於當前實例是啓用了複製分發,無意中喵到'Distribution clean up: distribution這個job的下一次執行時間明顯不正常,下一次運行時間跟上一次運行時間一樣??? 啓
昵稱 MSSQL123
最近有個需要求,需要在SqlServer中鎖定一張表後,然後搞一些事情,完成後解鎖。 如何鎖定一張表,在MySQL和PostgreSQL中都比較好處理。有專用的語法來實現,在SqlServer中並沒有對於“直接鎖定一張表的語法”,如何來處理? 變通一下也比較簡單,甚至比MySQL和postgresql都更簡單。 1,如何在MySQL中鎖定一張表 MySQL語法:lock tables t2
昵稱 MSSQL123
SqlServer的事務複製中,immediate_sync和allow_anonymous兩個參數會影響到複製的後台行為和分發庫(distribution)的數據保留方式,這兩個參數單從名字上看,可能有些模稜兩可甚至雲裏霧裏,以下是個人結合複製的運維,對兩個參數的理解。 1,immediate_sync 參數含義:是否執行“立即同步”,立即同步啥?誰來同步?有啥作用?表面含義跟沒説一樣,完全看不
昵稱 MSSQL123
在邏輯複製中,正如MySQL的show slave status,或者postgresql的邏輯複製pg_stat_replication的sent_lsn,來觀察複製進度的座標位點,其複製進度座標位置都存儲在複製的源(source)端。 SqlServer的事務複製則有一些不一樣,在發佈端和訂閲端分別有一個記錄複製信息的系統表, 1,在源端,有一個MSdistribution_hist
昵稱 MSSQL123
1,應用場景 SQLServer中一個大表(測試環境千萬級,實際情況下會更多,達到10億級),刪除其中大部分數據。然後測試分批多次刪除和一次性全部刪除產生的transaction log的日誌大小的問題。 另:受限於相關的表做了複製分發,因此無法通過備份部分數據後truncate table的方式來實現,也無法通過新建一個表,通過rename的方式來交換實現,這兩種方式不
昵稱 MSSQL123
從一個簡單的SQL來看,CPU主頻對計算密集型SQL執行速度影響的差別,測試語句有三個特點:簡單SQL,計算密集型SQL,循環多次執行來放大執行時間 1,構造一個簡單的插入語句SQL 2,通過隨機排序,來模擬計算密集型操作 3,通過循環來放大執行時間 完全一樣的SQL: 10年前的4代i7,老掉牙的PC級CPU了,但是主頻高,3.6GHz主頻的CPU,2秒鐘跑完 5年前的Xeon E5620,服
昵稱 MSSQL123
SQL Server的Always on環境的備份規則設置比較混亂,加上一個copy_only備份,更是亂上加亂,copy_only備份實在極少的特殊情況下使用的備份,企業級日常備份,不可能用copy_only備份的,因此這裏不討論copy_only備份。 Backup preference有多重設置,企業級生產環境保持默認就可以,這裏以默認設置為例 1、不管怎麼設置,正常的數據庫備份(fu
昵稱 MSSQL123
Review某個SQLServer的生產環境的errolog的時候,無意中發現這麼一條日誌,意思是過多的VLF文件,會影響數據庫的啓動速度和日誌備份效率。 Database *** has more than 10000 virtual log files which is excessive. Too many virtual log files can cause long startup
昵稱 MSSQL123
原文地址:https://www.sqlshack.com/suspend-and-resume-data-movement-in-sql-server-always-on-availability-groups/ 在關於SQLServer2016AlwaysOn的第26篇文章中,我們將會討論AlwaysOn數據庫副本之間的掛起和恢復流程 要求 我們可以配置SQL
昵稱 MSSQL123
原文地址:https://www.sqlshack.com/apply-sql-server-patches-or-cumulative-updates-in-sql-server-always-on-availability-groups/ 在本系列關於 SQL Server 始終在線可用性組的第 32 篇文章中,我們將討論為 AG 複製實例應用服務包或累積更新包的過程。 SQL Serv
昵稱 MSSQL123
前兩天某SQLServer服務器斷斷續續出現性能問題,綜合排查之後懷疑是job定時任務引起的,於是查了一下job的schedule和最近一次執行情況。 大部分job的schedule都沒有問題,由於當前實例是啓用了複製分發,無意中喵到'Distribution clean up: distribution這個job的下一次執行時間明顯不正常,下一次運行時間跟上一次運行時間一樣??? 啓
昵稱 MSSQL123
最近有個需要求,需要在SqlServer中鎖定一張表後,然後搞一些事情,完成後解鎖。 如何鎖定一張表,在MySQL和PostgreSQL中都比較好處理。有專用的語法來實現,在SqlServer中並沒有對於“直接鎖定一張表的語法”,如何來處理? 變通一下也比較簡單,甚至比MySQL和postgresql都更簡單。 1,如何在MySQL中鎖定一張表 MySQL語法:lock tables t2
昵稱 MSSQL123
SqlServer的事務複製中,immediate_sync和allow_anonymous兩個參數會影響到複製的後台行為和分發庫(distribution)的數據保留方式,這兩個參數單從名字上看,可能有些模稜兩可甚至雲裏霧裏,以下是個人結合複製的運維,對兩個參數的理解。 1,immediate_sync 參數含義:是否執行“立即同步”,立即同步啥?誰來同步?有啥作用?表面含義跟沒説一樣,完全看不
昵稱 MSSQL123
在邏輯複製中,正如MySQL的show slave status,或者postgresql的邏輯複製pg_stat_replication的sent_lsn,來觀察複製進度的座標位點,其複製進度座標位置都存儲在複製的源(source)端。 SqlServer的事務複製則有一些不一樣,在發佈端和訂閲端分別有一個記錄複製信息的系統表, 1,在源端,有一個MSdistribution_hist
昵稱 MSSQL123