DBA基础系列SQL Server 2014:2. SQL Server用户数据库初始化配置
前言开始前先黑微软一把:Microsoft秉承一贯的简单易用作风(Next、Next、Next…)这点是它吸引用户的地方,但是这个优点如果用在数据库上将是一场灾难,如我们
前言开始前先黑微软一把:Microsoft秉承一贯的简单易用作风(Next、Next、Next… )这点是它吸引用户的地方,但是这个优点如果用在数据库上将是一场灾难,如我们上一章讲到的SQL Server安装部署,很多人都只知道下一步下一步下一步,但是从来没有考虑过安装向导给出这么多参数配置意义何在,同样的大家习惯了安装完SQL Server后直接使用的方式基本上不去考虑用户数据库初始配置,随着业务量不断攀升,数据量几何倍数的递增,然后发现SQL Server越来越慢,但是又各种无解,最后得出一个结论SQL Server只能满足中小企业需要,但是真实的情况是这样吗?答案当然是否定的【传闻纳斯达克核心数据库原始数据量约2PB现已经转到SQL 2014上了】视频地址
下面我将给到大家一些基本配置和思路让大家的用户数据库在未来数据量增长到TB、PB时依然可以有的放矢的去优化性能满足业务需求
当然这个仅仅是根据我的经验进行探讨,实际情况怎么搭配大家仁者见仁智者见智
无论如何还是要重申一句:本文观点仅代表个人经验,如有不足请大家补充,本文内容如果在实际生产中遇到问题不负任何责任,使用前请先自行论证,最权威的资源请查阅微软官方资料库MSDN,TechNet,官方Blog以及官方技术白皮书等
关于数据库文件场景一:新建数据库这种情况进行优化最为轻松,优化成本最低
实施步骤:
1. 业务分析,回答自己几个基本问题:
业务涉及的表:
哪些表是数据活跃表:
哪些表是数据惰性表:
cur T.NAMESYS.INDEXES cur=0curcur
将上述T-SQL打印出来的语句Copy到新查询器里面批量执行即可
然后再针对遗留在原始文件组中的那些非聚集索引导出其脚本,批量指定新文件组名字然后DROP,再CREATE
最后原始文件基本上都空了,这时候进行一次数据文件收缩,也就是几秒钟的事情了,至此底层数据整理完成
P.S.其实大家可以看出重整数据文件的过程并不是想象中那么复杂,理清思路产生一大堆脚本,然后扔到Job里面慢慢执行自己就可以提前下班吃饭了
【DBA的工作内容其实还是蛮愉快的:90%以上时间都是在等,等脚本执行,等问题发生,最关键的是等老板发工资;如果一家公司DBA每天都很忙要么是DBA能力不够,要么就是公司或老板有问题】
场景二交易型项目:
交易型项目比数据仓库要复杂一些,不过基本上也是使用上述脚本修修改改就能快速完成
需要注意的地方:主键、外键、约束(尤其是自增约束等)
如果有这些特殊情况就需要有针对性的逐步分析逐步迁移了,这时候就需要先理出一个优先级列表慢慢处理
关于数据库参数数据库参数也是比较重要的一个环节,尤其是SQL 2000退役,SQL 2005停止主流支持、SQL 2008即将停止主流支持,大量的数据库需要升级到更高版本
数据库兼容级别在帮助客户进行性能问题分析的时候我留意了一下,很多升级上来的数据库基本上数据库兼容级别都没有修改,这个是需要注意的
SQL Server一般情况默认向下兼容3个主流版本,是为了防止由于版本升级导致用户使用的早期语法或特殊的系统视图出现错误而给予的缓冲机会,并不是说大家在已经升级到高版本后还是继续使用老版本的特性
CHECKSUM这个参数一般是由于从SQL 2000升级上来时候没有重新配置导致,
SQL 2000的时候还只能简单的检查一下数据页头和定义,无法检查数据页是否真的正常
建议升级上来的所有数据库都去检查一下这个并设置为CHECKSUM
自动关闭数据库:这个参数类似于Oracle关闭时仅发出shutdown命令,它会等待所有会话结束后关闭数据库,一般情况我们都会用到immediate要求立即结束和关闭
自动创建统计信息:这个最好是开启,SQL执行依赖的执行计划,执行计划评估执行成本就是根据统计信息来的,所以这个相当重要,不是特殊情况应该保持常开
自动收缩数据库:个人从来就很诧异这个参数,如此耗费性能又没有实际价值的一个参数有存在的意义吗?如果不是特殊原因这个参数应该始终关闭
自动更新统计信息:这个参数同自动创建统计信息是一样的,强烈建议常开,统计信息收集越准SQL执行选择的执行计划就会越优,,性能也就越好
自动异步更新统计信息:这个参数建议设置为开启,我们知道统计信息非常重要,但是如果每次数据变化都去收集一次统计信息这个性能也就不那么好了,这个又再次体现了【平衡】
以上内容各个版本数据库都适用,下列内容将针对特殊版本使用
数据压缩:
适用版本:SQL Server 2008及其以后
非聚集列存储索引:
适用版本:SQL Server 2012及其以后
聚集列存储索引:
适用版本:SQL Server 2014及其以后
本文出自 “Fast” 博客,请务必保留此出处

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









6 月 3 日のニュースによると、Microsoft はすべての Windows 10 ユーザーに全画面通知を積極的に送信し、Windows 11 オペレーティング システムへのアップグレードを奨励しています。この移行には、ハードウェア構成が新しいシステムをサポートしていないデバイスが含まれます。 2015 年以来、Windows 10 は市場シェアの 70% 近くを占め、Windows オペレーティング システムとしての優位性を確固たるものにしました。しかし、そのシェアは82%を大きく上回り、2021年に発売されるWindows 11のシェアを大きく上回っている。 Windows 11 は発売から 3 年近く経ちますが、市場への浸透はまだ遅いです。 Microsoft は、Windows 10 の技術サポートを 2025 年 10 月 14 日以降に終了すると発表しました。

8 月 14 日のこのサイトのニュースによると、今日の 8 月のパッチ火曜日イベント日に、Microsoft は 22H2 および 23H2 用の KB5041585 更新プログラム、および 21H2 用の KB5041592 更新プログラムを含む、Windows 11 システム用の累積的な更新プログラムをリリースしました。 8 月の累積更新プログラムで上記の機器がインストールされた後、このサイトに添付されるバージョン番号の変更は次のとおりです。 21H2 機器のインストール後、機器のインストール後、バージョン番号は Build22000.314722H2 に増加しました。バージョン番号は Build22621.403723H2 に増加しました。 装置のインストール後、バージョン番号は Build22631.4037 に増加しました。 Windows 1121H2 の更新プログラムの主な内容は次のとおりです。 改善: 改善されました。

2024 年後半、マイクロソフトの公式セキュリティ ブログは、セキュリティ コミュニティからの呼びかけに応えてメッセージを公開しました。同社は、セキュリティを向上させるために、2024 年後半にリリースされる Windows 11 から NTLAN Manager (NTLM) 認証プロトコルを廃止する予定です。これまでの説明によれば、マイクロソフトは以前にも同様の動きを行っているという。昨年 10 月 12 日、Microsoft は公式プレス リリースで、NTLM 認証方法を段階的に廃止し、より多くの企業とユーザーに Kerberos への切り替えを促すことを目的とした移行計画を提案しました。 NTLM 認証をオフにした後にハードウェア接続されたアプリケーションやサービスで問題が発生する可能性がある企業を支援するために、Microsoft は IAKerb と

Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

5 月 21 日のニュースによると、マイクロソフトは本日、新キャンパスで開催された盛大なイベントで新しい Windows PC 製品である Windows 11 AI PC を一般に発表しました。この新製品は AI エクスペリエンスのために特別に設計されています。 Windows 11 AI PC は、優れたパフォーマンスとインテリジェントなデザインを備えており、よりインテリジェントで効率的なコンピューティング エクスペリエンスをユーザーに提供することを目指しています。この製品は、人工知能テクノロジーを使用して、より人間的なインタラクション方法を実現し、ユーザーに究極のユーザーエクスペリエンスをもたらします。同時に、Windows 11 AI PC には多くのインテリジェントな機能も統合されており、Windows 11 AI は PC ユーザーに大きなハイライトを提供できます。それは、その独自の「リコール」機能です。前代未聞のこの「記憶」

最近、Samsung Display と Microsoft は重要な協力協定を締結しました。合意によると、Samsung Displayは、ゲームや映画などのマルチメディアコンテンツ向けのMRデバイスを開発しているMicrosoftに、数十万枚の複合現実(MR)ヘッドマウントデバイス用のOLEDoSパネルを開発、供給する予定だ。 OLEDoSの仕様決定後に発売され、主に商用分野向けに提供され、早ければ2026年にも提供される予定だ。 OLEDoS (OLED on Silicon) 技術 OLEDoS は、シリコン基板上に OLED を蒸着する新しいディスプレイ技術であり、従来のガラス基板と比較して、より薄く、より高い画素数を実現します。 OLEDOS表示と通常表示

MySQLi を使用して PHP でデータベース接続を確立する方法: MySQLi 拡張機能を含める (require_once) 接続関数を作成する (functionconnect_to_db) 接続関数を呼び出す ($conn=connect_to_db()) クエリを実行する ($result=$conn->query()) 閉じる接続 ( $conn->close())

PHP でデータベース接続エラーを処理するには、次の手順を使用できます。 mysqli_connect_errno() を使用してエラー コードを取得します。 mysqli_connect_error() を使用してエラー メッセージを取得します。これらのエラー メッセージをキャプチャしてログに記録することで、データベース接続の問題を簡単に特定して解決でき、アプリケーションをスムーズに実行できるようになります。
