会議中に同僚から開発ライブラリを書き込めないとの報告を受けました。エラー メッセージは次のとおりでした。 1209 - MySQL サーバーは --read-only オプションで実行されているため、このステートメントを実行できません 通常、このエラーには 2 つの原因があります。 1. スレーブ データベースに接続します。スレーブ ライブラリは通常、読み取り専用に設定されます。 2. マスターデータベースのread_onlyパラメータが1に変更されます 開発者は通常のユーザーであり、このパラメータの値を変更する権限を持つべきではありません。 DBA はこのパラメータを積極的に変更しません。では、開発ライブラリを作成できない理由は正確には何でしょうか? まず、部門内の 200 名を超える研究開発担当者がこの問題に遭遇したため、問題は開発者側にあるのではないことが確認されました。 まず問題を解決するには、マスター データベースの read_only パラメータの値を照会します。確かに、read_only は 1 に設定されています。 手動で 0 に変更すると、問題は解決します。問題は、なぜ read_only が 1 に設定されているのかということです。 解決手順は次のとおりです。
mysql エラー ログを確認すると、次の情報が見つかりました。 151231 13:55:11 mysqld_safe 現在実行中のプロセス数: 0 151231 13:55:11 mysqld_safe mysqldが再起動されました これは、MySQL が再起動されたことを示しています。再開の理由は何ですか? システムログを確認したところ、次のエラーが見つかりました。
このエラーから、メモリオーバーフローにより MySQL が再起動したことがわかります。 メモリ不足: プロセス 12805 (mysqld) スコア 964 を強制終了するか、子プロセスを犠牲にする それで、メモリリークの原因は何でしょうか? システムの履歴コマンドを確認したところ、同僚がバックアップを実行していたことがわかりました。当時、システムは大きな負荷がかかっており、セカンダリ システムにはスワップ パーティションが設定されていませんでした。上記の理由により、MySQL が再起動されました。 スワップ: 0 0 0 再起動すると read_only=1 になるのはなぜですか? 設定ファイルで read_only が設定されている可能性があります。設定ファイルを確認してください。
この時、開発環境が突然書き込めなくなった原因がようやく判明しました。 メインライブラリが read_only=on を設定するのはなぜかと疑問に思うかもしれません。それは、もともと MMM 環境だったからです。 MMM 環境が削除されたので、設定ファイルの read_only を 0 に設定します。これで開発ライブラリが書き込みできない問題は解決しました。 MySQL はエラーを報告します: MySQL サーバーは --skip-grant-tables オプションで実行されているため、このステートメントを実行できません、など。 1. mysqlにログインします: mysql –u root –p mysql> グローバル read_only=0 を設定します。 権限をフラッシュします。 2. /etcディレクトリにあるMySQL設定ファイルmy.cnfを変更します。 mysqlサービスを再起動します: service mysqld restart エラー 1290 (HY000): MySQL サーバーは --skip-grant-tables オプションで実行されているため、実行できません。 このエラーは、MySQL 8.0.3のインストール中にパスワードをリセットしたときに報告されました。パスワードが設定されていない場合、mysqlを操作するには/etc/my.cnfにこのセクションを追加する必要があるためです。 #パスワード認証をスキップ
しかし、この文を追加した後、MySQL は再びこのエラーを報告し、無限ループになりました。ようやく解決策を見つけました。 これは、権限が設定されているが更新されていないためです。 最初に実行する
SQL文を再度実行すると成功します ALTER USER 'root'@'localhost' を 'your password' によって mysql_native_password で識別します。 以下もご興味があるかもしれません:
|
<<: Ubuntu 20.04 は Wi-Fi に接続します (2 つの方法)
>>: JavaScriptアップロードファイル制限パラメータケースの詳細な説明
国内の多くの広告主にとって、印刷広告の制作と評価は、しばしばかなり主観的です。自分の感情や美的感覚に...
目次序文解決:ステップ1ステップ2序文環境: VMware Workstation 上に Linux...
目次現在の問題解決プロセス具体的な手順解決した事件現在の問題MySQL コマンド プロンプトに複数行...
MySQL proxies_priv(シミュレートされたロール)を使用して同様のユーザーグループ管理...
朝早くに電話で起こされました。あるプロジェクトのデータベースがダウンしていて起動できないとのことでし...
この記事では、Dockerを使用してMySQLデータベースとリモートアクセス構成をデプロイする方法を...
最近、メンバーがテストできるようにプロジェクトをパッケージ化する必要がありますが、パッケージ化された...
display: flex レイアウトに関しては、深く理解している人もいますし、私も他の人の作業か...
序文以前フロントエンドを勉強していたとき、メタタグに対する私の理解はこの一文だけでした。 <メ...
目次序文コンポーネントライブラリの作成主要な構成の変更ディレクトリレイアウトの調整ライブラリ構築のた...
Dockerfileを初期化するプロジェクトの名前が express であると仮定して、expres...
01. コマンドの概要basename - ファイル名からディレクトリとサフィックスを削除しますba...
目次JSX環境の構築プロジェクトの設定NPMを初期化するwebpackをインストールするBabelを...
プロジェクトで frameset 属性を使用したことがあるかどうかはわかりません。昨年、オンライン ...
Web アプリケーションが 1 台のマシンでのみ実行される場合、パフォーマンスを向上させるのは非常に...