ホームページ > データベース > mysql チュートリアル > Amazon EC2 Micro インスタンス上の MySQL がエラー 12 (メモリ不足) で起動を中止するのはなぜですか?

Amazon EC2 Micro インスタンス上の MySQL がエラー 12 (メモリ不足) で起動を中止するのはなぜですか?

Patricia Arquette
リリース: 2024-11-26 18:57:09
オリジナル
544 人が閲覧しました

Why Does My MySQL on Amazon EC2 Micro Instance Abort Startup with Error 12 (Insufficient Memory)?

Amazon EC2、MySQL がメモリ不足により起動を中止する (エラー番号 12)

Amazon EC2 マイクロ インスタンスで MySQL を実行すると、次のような問題が発生する可能性があります。 「InnoDB: mmap (x bytes) failed; errno 12」というエラーが発生します。このエラーは、システム メモリが不足しているため、MySQL で使用されるストレージ エンジンである InnoDB がバッファ プールに必要なメモリを割り当てることができないことを示します。

この問題を解決するには、次の手順を実行できます。

  1. スワップ スペースの追加: マイクロ インスタンスにはデフォルトで専用のスワップ スペースがありませんが、これは次の方法で克服できます。スワップファイルを作成しています。次のコマンドを実行します:

    • dd if=/dev/zero of=/swapfile bs=1M count=1024
    • mkswap /swapfile
    • swapon /swapfile
  2. バッファ プール サイズの増加: バッファ プールにより多くのメモリを割り当てるには、MySQL 構成ファイル (my.cnf) の innodb_buffer_pool_size パラメータを増やします。値が利用可能なメモリ範囲内であることを確認してください。
  3. RDS サービスを使用する: ミッションクリティカルなアプリケーションの場合は、メモリを処理するマネージド データベース サービスである Amazon Relational Database Service (RDS) の使用を検討してください。割り当てとスケーリングは自動的に行われます。

例構成

次に、バッファー プール サイズとスワップ スペースを増やした my.cnf 構成の例を示します。

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
innodb_buffer_pool_size=1G

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
ログイン後にコピー

注: innodb_buffer_pool_size の特定の値は、使用する環境に基づいて調整する必要があります。アプリケーションのメモリ要件。利用可能なシステム メモリを超えてはなりません。

以上がAmazon EC2 Micro インスタンス上の MySQL がエラー 12 (メモリ不足) で起動を中止するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート