MySQLでCDRデータベースを最適化する

遅かれ早かれ、CDRのベースはかなりのサイズに成長します。 最適化するには、かなり簡単な方法がいくつかあります。



1. MySQLをアップグレードします。 新しいバージョンはそれぞれ、前のバージョンよりも高速です。 更新の問題はトピックの範囲を超えていますが、「バージョンを介して」ジャンプするときは、データベース全体をアンロードしてクリーンインストールに再度アップロードするのが最適です。



2. InnoDBを最適化します。 my.cnf構成では、次の設定をお勧めします。



innodb_buffer_pool_size = 256M ;    ,   RAM  . innodb_file_format = Barracuda ;    .  . innodb_buffer_pool_instances = 1 ;          ,  . innodb_change_buffer_max_size=10 ;  CDR      .     . innodb_flush_log_at_trx_commit=2 ;             .
      
      







3.エンジンをInnoDBに変更します



 ALTER TABLE cdr ENGINE=InnoDB;
      
      







4.パフォーマンススキーマを使用しない場合は無効にします(my.cnf)



 performance_schema=OFF
      
      







5.クエリキャッシュ(my.cnf)を有効にします



 query_cache_type=1 query_cache_size=32M
      
      







6.年の月に1つ、合計12個のパーティションを作成して、テーブルをパーティション化します。



 ALTER TABLE cdr PARTITION BY HASH (month(calldate)) PARTITIONS 12;
      
      







7. SSDドライブではなく機械式ドライブがある場合は、圧縮形式に切り替えます。 このためには、Barracuda形式が必要です。



 ALTER TABLE cdr ROW_FORMAT=COMPRESSED;
      
      







MySQL 5.6に関連する推奨事項



All Articles