このチュートリアルでは、CentOS 7サーバーでMySQLの厳密モードを無効にする方法を示します。知らない人のために、厳密モードは、MySQLが無効または欠落している値を処理する方法を制御します。 INSERTやUPDATEなどのデータ変更ステートメントで。値はいくつかの理由で無効になる可能性があります。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudo
を追加する必要があります。 ルート権限を取得するコマンドに‘。ステップバイステップのターンオフ、またはCentOS7サーバーでMySQLstrictモードを無効にする方法を説明します。
前提条件
- 次のオペレーティングシステムのいずれかを実行しているサーバー:CentOSLinux。
- 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
non-root sudo user
またはroot user
へのアクセス 。non-root sudo user
として行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。
MySQL厳密モードを無効にする
ステップ1.まず、MySQLconfのバックアップを開始しましょう。
これにより、問題が発生した場合に変更を元に戻すことができます。cp -a /usr/my.cnf{,.strict.bak}
cp -a /etc/my.cnf{,.strict.bak}
また、いつ、どのような変更が加えられたかを追跡するのに役立つため、有益です。
cp -a /usr/my.cnf{,.strict.bak} cp -a /etc/my.cnf{,.strict.bak}
ステップ2.MySQL構成ファイルを編集します。
お気に入りのコマンドラインエディタでファイルを開きます。この例では、「nano」を使用しています:
nano /etc/my.cnf
次の行を検索します:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
`sql_mode`変数を設定している上記のような行を見つけた場合は、MySQLstrictモードを無効にするために次の行に置き換える必要があります。
sql_mode=""
最後に、次のコマンドでMySQLを再起動します:
systemctl restart mysql
手順3.厳密なSQLモードが無効になっていることを確認します。
プロセスが正しく完了したことを確認するには、次のコマンドを実行します。
mysql -e "SELECT @@sql_mode;"
出力は次のようになります:
+--------------------------------------------+ | @@sql_mode +--------------------------------------------+ | NO_AUTO_CREATE_USER +--------------------------------------------+
おめでとうございます!MySQLストリクトモードを正常に無効にしました。このチュートリアルを使用して、CentOS7システムでMySQLストリクトモードをオフまたは無効にしていただきありがとうございます。追加のヘルプや役立つ情報が必要な場合は、 MySQLの公式ウェブサイトを確認してください。