【MySQL】MySQLでパスワードを変更する方法について解説
  • facebookページ
  • twitterページ
  • 2020.01.31

    【MySQL】MySQLでパスワードを変更する方法について解説

    ローカル環境にMySQLをインストールしただけの状態ではpasswordの設定が行われてません。

    これではセキュリティに問題がありますので、パスワードの設定をしておくことをお勧めします。

    そこで今回はpasswordの設定方法(変更方法)とその他に変更をする箇所について解説してみたいと思います。

    2つの変更方法

    passwordを変更する方法にはパターンがあります。

    どちらもコマンドラインを使用しますが、一つ目の方法としてはmysqladminコマンドを使用して設定する方法が挙げられます。

    この方法は非常に簡単に設定できる反面、デメリットとしてはログファイルにパスワードが残ってしまいます。

    よってセキュリティ上、このやり方ではセキュリティに問題を抱えることになりますので、このやり方はお勧めできません。

    二つ目の方法としてはrootユーザーでログインしてから変更する方法です。

    この方法ならログファイルにパスワードも残らず変更をかけることが出来ますので、こちらを覚えるようにしましょう。

    MySQLのパスワード変更方法

    冒頭でも述べていますが、MySQLはインストールした状態のままであればpasswordの設定は一切されていません。

    そこでまず、コマンドラインでMySQLにログインし、そこでUPDATEをかけpasswordを変更する必要があります。

    passwordの変更には次のコマンドを使用します。

    UPDATE文を使用することで、テーブルに格納されているユーザーのパスワードを新たに設定更新することが出来ます。

    では実際に次のコマンドを見てみましょう。

    まず最初に、現在使用できるユーザーを全て確認してみました。

    インストールしたままの状態ですので、当然passwordはかかっていない状態であることが確認できます。

    またユーザーも新規追加していないのでrootしかありません。

    ではこの状態からpasswordを設定してみましょう。

    コマンドラインでログインしたままの状態で”UPDATE mysql.user SET password=PASSWORD(‘新しいパスワード’) WHERE user=’root’;”を実行します。

    またこのコマンドを実行した後で、MySQLに反映させないといけないので、次に以下のコマンドも併せて実行させてください。

    このコマンドを実行することで、再起動をかけることなくMySQLに設定の反映をさせることが出来ます。

    では早速設定が反映されているかどうかを確認してみましょう。

    先ほどと同じく、SELECTを使って一覧検索をかければ設定の確認ができます。

    表示としてはハッシュ化されていますので設定したパスワードとは違いますが、先ほどとは変わって”Password”の部分が空欄ではなくなっていることが確認できます。

    passwordの設定はこれで完了です。

    phpMyAdminの設定を変更する

    先ほどpasswordの設定は完了しましたが、一つ問題が残っています。

    次の画像を見てください。

    これはphpMyAdminを使ってブラウザからサーバーを開こうとした際に表示される画面です。

    先ほどpasswordを変更したことによって、今度はこちらがエラーとなりました。

    よってここでは、このエラーを修正する方法について解説していきます。

    phpMyAdminフォルダの中に「config.inc.php」というファイルがあるので見つけてください。

    このファイルをエディタで開くとテキストで設定が記述されています。

    /*
    * This is needed for cookie based authentication to encrypt password in
    * cookie
    */
    $cfg[‘blowfish_secret’] = ”; /* YOU SHOULD CHANGE THIS FOR A MORE SECURE COOKIE AUTH! */

    /*
    * Servers configuration
    */
    $i = 0;

    /*
    * First server
    */
    $i++;

    /* Authentication type and info */
    $cfg[‘Servers’][$i][‘auth_type’] = ‘config’;
    $cfg[‘Servers’][$i][‘user’] = ‘root’;
    $cfg[‘Servers’][$i][‘password’] = ”;
    $cfg[‘Servers’][$i][‘extension’] = ‘mysqli’;
    $cfg[‘Servers’][$i][‘AllowNoPassword’] = true;
    $cfg[‘Lang’] = ”;

    /* Bind to the localhost ipv6 address and tcp */
    $cfg[‘Servers’][$i][‘host’] = ‘127.0.0.1’;
    $cfg[‘Servers’][$i][‘connect_type’] = ‘tcp’;

    /* User for advanced features */
    $cfg[‘Servers’][$i][‘controluser’] = ‘pma’;
    $cfg[‘Servers’][$i][‘controlpass’] = ”;

    /* Advanced phpMyAdmin features */
    $cfg[‘Servers’][$i][‘pmadb’] = ‘phpmyadmin’;
    $cfg[‘Servers’][$i][‘bookmarktable’] = ‘pma__bookmark’;
    $cfg[‘Servers’][$i][‘relation’] = ‘pma__relation’;
    $cfg[‘Servers’][$i][‘table_info’] = ‘pma__table_info’;
    $cfg[‘Servers’][$i][‘table_coords’] = ‘pma__table_coords’;
    $cfg[‘Servers’][$i][‘pdf_pages’] = ‘pma__pdf_pages’;
    $cfg[‘Servers’][$i][‘column_info’] = ‘pma__column_info’;
    $cfg[‘Servers’][$i][‘history’] = ‘pma__history’;
    $cfg[‘Servers’][$i][‘designer_coords’] = ‘pma__designer_coords’;
    $cfg[‘Servers’][$i][‘tracking’] = ‘pma__tracking’;
    $cfg[‘Servers’][$i][‘userconfig’] = ‘pma__userconfig’;
    $cfg[‘Servers’][$i][‘recent’] = ‘pma__recent’;
    $cfg[‘Servers’][$i][‘table_uiprefs’] = ‘pma__table_uiprefs’;
    $cfg[‘Servers’][$i][‘users’] = ‘pma__users’;
    $cfg[‘Servers’][$i][‘usergroups’] = ‘pma__usergroups’;
    $cfg[‘Servers’][$i][‘navigationhiding’] = ‘pma__navigationhiding’;
    $cfg[‘Servers’][$i][‘savedsearches’] = ‘pma__savedsearches’;
    $cfg[‘Servers’][$i][‘central_columns’] = ‘pma__central_columns’;
    $cfg[‘Servers’][$i][‘designer_settings’] = ‘pma__designer_settings’;
    $cfg[‘Servers’][$i][‘export_templates’] = ‘pma__export_templates’;
    $cfg[‘Servers’][$i][‘favorite’] = ‘pma__favorite’;

    /*
    * End of servers configuration
    */

    この中に「$cfg[‘Servers’][$i][‘password’] = ”;」という部分がありますので、こちらに先ほど設定したパスワードを入力して保存してください。

    終わりましたらそのままファイルを閉じていただいて構いません。

    確認のため、再度phpMyAdminを開いてみましょう。

    無事phpMyAdminが開けることが確認できました。

    設定は以上です。

    まとめ

    いかがでしたか?

    今回はpasswordの設定方法について解説してみました。

    MySQLは初期状態では色々と問題もあるため、まずはじめにパスワードを設定することと、定期的にpasswordを変更する習慣を身に着けておきましょう。


    ポテパンが提供するサービスについて

    本メディア「ポテパンスタイル」を運営する株式会社ポテパンは、エンジニアキャリア領域で複数サービスを提供しています。

    ポテパンフリーランス

    ポテパンフリーランス

    フリーランスエンジニアの方に高単価案件をご紹介しております。弊社ではフリーランス案件を常時300件ほど保有しており、その中からあなたに適した案件をご案内いたします。また、これから独立してフリーランスになる方の無料個別相談も承っております。フリーランスになった後の案件獲得方法やお金面(税金や保険など)についてお答えいたします!フリーエンジニアになりたい方向けのコンテンツも盛りだくさんです。

    ポテパンキャリア

    ポテパンキャリア

    エンジニア職専門の転職エージェントです。ポテパンキャリアでは、技術のわかるエージェントがあなたの転職をサポートします。エージェント自身がエンジニアなので、あなたと同じ目線で仕事内容や今後のキャリアについて一緒に考えることができます。年収800万円以上のハイスペック転職をご希望の方は「ポテパンプロフェッショナル」もご用意しておりますのでご利用下さいませ。

    ポテパンキャンプ

    ポテパンキャンプ

    ポテパンキャンプでは、RubyにてゼロからオリジナルのECサイトを作り上げてる3ヶ月間の実践型カリキュラムを提供しております。すでに本スクールの卒業生は、エンジニア職として様々な企業様に就職しております。なお、本スクールは受講料25万円と他社スクールに比べ格安となっており、またポテパンからご紹介させていただいた企業へ就職が決まった場合は、全額キャッシュバックいたします。



    株式会社ポテパンは、企業とエンジニアの最適なマッチングを追求しています。気になるサービスがあれば、ぜひ覗いてみてください!

    ポテクラバナー ポテプロバナー

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE