はじめに
MySQL は、Webアプリケーションソフトウェアで人気のあるデータベース管理システムです。多くのWebサービスと同様に、MySQLには管理者レベルまたはrootのパスワードがあります。ルートパスワードを使用すると、ユーザーはデータベース内のすべての最上位機能を実行できます。
MySQLデータベースにrootパスワードを設定したことがない場合は、それに接続できるはずです。ただし、誰でもデータベースにアクセスできるため、これは適切なセキュリティ対策ではありません。
データベースにルートパスワードがあり、それを見失った場合は、このガイドはLinuxおよびWindowsでMySQLルートパスワードをリセットするのに役立ちます 。
前提条件
- 既存のMySQLデータベース
- MySQLを実行しているLinuxまたはWindowsサーバーへのアクセス
- MySQLデータベースをホストするコンピューターの管理者権限
- テキストエディタ。メモ帳はデフォルトでウィンドウに含まれています。 LinuxにはVimがデフォルトでインストールされています。
- コマンドラインインターフェイス(または端末)へのアクセス
LinuxでMySQLユーザーのrootパスワードを変更する方法
ステップ1:MySQLユーザーとしてログインします
Linuxインストールを起動するときは、通常MySQLを実行しているのと同じユーザーとしてログインしていることを確認してください。 rootとしてログインできますが、MySQLサーバーを起動したら、必ず --user=mysql
で起動してください。 オプション。
そうしないと、システムがrootユーザーが所有するファイルを作成し、問題が発生する可能性があります。
ステップ2:MySQLサービスの.pidファイルを見つける
次のステップは、MySQLサービスの.pidファイルを見つけることです。
ほとんどのシステムはそれらを/var / lib / mysql /に保存します 、 / var / run / mysqld / 、または/ usr / local / mysql / data / 道。ファイル名は通常mysqldで始まります (またはシステムのホスト名)そして .pidで終わります 拡張機能。
ステップ3:mysqldプロセスを強制終了します
新しいルートパスワードを作成する前に、MySQLサーバーを停止してください。 mysqldプロセスを強制終了するには、コマンドラインを開き、次のコマンドを実行します。
kill `cat /mysql-data-directory/host_name.pid`
mysql-data-directory / host_name.pidを置き換えます 前の手順で見つけたファイル名を使用します。ファイルへのパス全体を指定してください。また、コマンドの先頭にある一重引用符ではなく、必ずバックティックキー(通常はタブキーの上)を使用してください。
ステップ4:パスワードファイルを作成する
1.お気に入りのテキストエディタを開きます。この例では、vimを使用しています:
sudo vim
2.次に、ファイルに次の行を追加します。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
一重引用符とセミコロンを含めることに注意してください。 NewPasswordを置き換えます 使用したいパスワードで。最後に、これらの例のように、強力で安全なパスワードを使用してください。
このコマンドは、現在使用しているマシンで機能します。別のシステムに接続している場合は、 localhostを置き換えます 適切なホスト名を使用します。
3.ファイルをhome/ me / mysql-initに保存します 。
ステップ5:MySQLサーバーを再起動し、新しいパスワードを適用します
パスワードに変更を適用するには、ターミナルで次のコマンドを実行してMySQLサーバーを再起動します。
mysqld --init-file=/home/me/mysql-init &
これによりMySQLが起動し、テキストファイルのパスワード変更が適用されます。サーバーの起動方法によっては、他のオプション( --defaults-file
など)を追加する必要がある場合があります。 init
の前 コマンド。)
ステップ6:クリーンアップ
最後に、rootアカウントを使用してMySQLサーバーにログインし、新しいパスワードが機能することを確認します。次に、手順4で作成したファイルを削除します。
WindowsでMySQLルートパスワードをリセットする方法
ステップ1:MySQLサーバーを停止します
1.管理者としてログインしているかどうかを確認することから始めます。
2. Winを押します + R (Windows / Superキーを押したまま、「r」を押します。)「実行」ボックスが表示されたら、次のように入力します。
services.msc
3. OKをクリックします 。
4.サービスのリストを下にスクロールして、MySQLサービスを見つけます。そのエントリを右クリックしてから、停止を左クリックします 。
ステップ2:テキストエディタを起動する
メニューをクリックして、メモ帳を検索します 。
または、次のパスを使用することもできます:メニュー>Windowsアクセサリ>メモ帳 。
ステップ3:パスワードコマンドを使用して新しいテキストファイルを作成する
1.テキストエディタに次の行を入力します。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
引用符とセミコロンは必ず保持してください。 NewPasswordを置き換えます 選択したパスワードを使用します。
2.ファイルを使用します>名前を付けて保存 ファイルをハードドライブのルートに保存するためのメニュー(C:)。 mysql-init.txtなどのファイル名を選択します 。
したがって、 localhost コマンドは、ローカルシステムのパスワードを変更します。ネットワーク経由でシステムのパスワードを変更する場合は、 localhostの代わりにホスト名を使用してください 。
ステップ4:コマンドプロンプトを開く
1. Ctrlを押します +シフト + Esc 。
2.次に、ファイルをクリックします メニュー>新しいタスクを実行 。
3. cmd.exeと入力します 、チェックボックスをオンにして管理者として実行します。
4. OKをクリックします 。
ステップ5:新しい構成ファイルを使用してMySQLサーバーを再起動します
1.コマンドプロンプトを使用してMySQLディレクトリに移動します:
cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
2.次に、次のように入力します。
mysqld --init-file=C:\\mysql-init.txt
C:プロンプトの後にスラッシュが2つあることに注意してください。
また、手順2で別のファイル名を選択した場合は、二重スラッシュの後にその名前を使用してください。
ステップ6:クリーンアップ
これで、新しいパスワードを使用してrootとしてMySQLサーバーにログインできます。
それが機能することを再確認してください。独自の構成オプションがある場合( --defaults-file
を使用してMySQLを起動するなど) オプション)、先に進んでください。
MySQLが起動し、パスワードの変更を確認したら、 C:\ mysql-init.txtを削除します ファイル。