表面に書かれています:ルールのないサークルはありません。インターネットに参加したばかりの人にとって、MySQL、MySQLは、インターネット上で最も人気のあるリレーショナル データベース製品であるため、必ず触れることになりますが、これには長所と短所があります。 、その特性に基づいて、インターネット上のほとんどのアプリケーションの特性と組み合わせて、インターネット企業でMySQL DBAとしての私の長年の経験に基づいて、著者はインターネットのためのいくつかの開発仕様を要約しました MySQL、参照のみ。
1. 基本仕様
(1) ストレージエンジンINNODBを使用
(2) キャラクターセットutf8
(3)を使用するすべてのテーブルがコメントを追加する必要があります(4)
5000Wで単一のテーブルのデータボリュームを制御することをお勧めします内(5) データベース
⽚、ファイルおよびその他のビッグデータに保存しないでください(6) ) ですデータベースのストレス テストをオンラインで行うことは禁止されています
(7) 禁止
⽌テストおよび開発環境からデータベースへの直接接続
2.命名条約(1) library名、テーブル名、およびフィールド名には、命名長が固定されている必要があります。
ライブラリ名、テーブル名、フィールド名は禁止されています⽌
32文字以上に制限されています。名前の意味は必見(3) ライブラリ名、テーブル名、フィールド名禁止
⽌Disabled⽤ を使用するMySQL 予約語
(4) 一時ライブラリ名とテーブル名には、接頭辞としてtmpと⽇を付ける必要があります 日付は末尾です
(5) バックアップライブラリとテーブルには、接頭辞としてbakを付け、接尾辞としてdate
を付ける必要があります。 3. ライブラリ、テーブル、フィールド開発および設計仕様
(1) 禁止⽌パーティションテーブルを使用する
(2) 大きなフィールドを分割し、アクセスを制限する周波数フィールド、ホット データとコールド データの分離
(3) HASHを使用して⾏を入力します。テーブル名のサフィックスはです ⽤⼗基本番号、添え字は 0
(4) から始まります日付と時刻によるテーブルはYYYY[MM][DD][HH]形式に準拠する必要があります
(5) 適切なデータベースとテーブルのシャーディング戦略を採用します。たとえば、Qianku Ten Tables、Ten Databases Hundred Tables などです。
(6) TEXT、BLOBタイプは使用しないようにしてください。
(7) 正確な浮動小数点数を格納するには、FLOATとDOUBLEの代わりにDECIMALを使用してください
(8) よりシンプルより良い: 文字を変換する 数値の場合、ENUMtype(9) の代わりに を使用します。
すべてのフィールドは次のように定義されます。 NULLではありません (10) 非負の整数を格納するには
UNSIGNEDを使用します(11) INT型の固定職業
4 バイトストレージ (12)
timestampを使用して時間を保存します (13) Use
UNSIGNEDSとらげIPV4(14)
VARBINARYを使用大文字と小文字を区別する可変長文字列を保存します
(15) 平文のパスワードをデータベースに保存することは禁止されており、パスワードは暗号化されて保存されます
(16) 数値型フィールドを使用します
Tinyint (1Byte) )
smallint (2Byte)
mediumint (3Byte)
int (4Byte)
bigint (8Byte)
|