Windows(仮想マシンWindows Server 2012R2 64ビット)の下で、MSIインストーラーを介してmysql 8.0をインストールし、リモートアクセスを有効にします。途中に多くの穴があり、それを記録します。
1.インストールパッケージを準備します。
https://dev.mysql.com/downloads/windows/installer/8.0.html
2.インストール
1. mysql-installer-community-8.0.19.0.msiをダブルクリックして、インストールインターフェイスに入ります。
注:.netフレームワーク4.5.2サポートが必要です。インストールする前に.netフレームワークをインストールしてください。
2.必要に応じてインストールの種類を選択します。ここでは[カスタム]を選択し、[次へ]をクリックします。
3. MySQL Server 8.0.19-X64およびMySQL Workbench 8.0.19-X64を選択し、右矢印をクリックしてインストールするリストに入れ、[次へ]をクリックします。
4. [実行]をクリックしてインストールします。
5.インストール手順は以下のとおりですステータスが「完了」になったら、「次へ」をクリックします。
6.構成インターフェースに入る準備ができたら、「次へ」をクリックします。
7. Standalone MySQL Server / Classic MySQL Replicationを選択し、Nextをクリックします。
8.名前とポートを構成します。ここではデフォルトを選択し、[次へ]をクリックします。
9.認証方法を選択し、ここで2番目の方法を選択します。誰かが最初の方法にバグがあると言ったことを以前に読んだことがあります。私はそれを注意深く調査しませんでした。とにかく、これは個人的な使用には影響しません。
10.ルートパスワードを設定し、[ユーザーの追加]をクリックして、後でリモートアクセスするユーザーを追加します。
11.デフォルトでは、[次へ]をクリックします。
12.設定を実行するには、[実行]をクリックします。
13.すべて完了したら、[完了]をクリックします。
14.次へをクリックします。
15. [完了]をクリックして、すべてのインストールと構成を完了します([セットアップ後にMySQLワークベンチを開始する]がチェックされているかどうかの判断により、ワークベンチを開くチェックはしていません)。
3.環境変数を設定します。
MySQLインストールは、デフォルトでC:\ Program Files \ MySQLパスにインストールされます。
1.新しいシステム変数:MYSQL_HOME:C:\ Program Files \ MySQL \ MySQL Server 8.0
パスに追加:%MYSQL_HOME%\ bin
2.環境変数の構成が成功したことを確認します
次の図に示すように、cmdでmysql -uroot -pと入力してから、前にrootアカウントのパスワードを入力すると、設定が成功します。
mysqlを入力する人もいることに注意してください-uroot -p Enterが表示されます
4.リモートアクセスを設定します。
1. mysqlユーザーを確認します。
使用のmysql; - mysqlのデータベースに切り替え SELECT ユーザー、ホスト、プラグインから ユーザー ; - 照会ユーザー
その中でも、appsユーザーは以前にインストールしたときに確立されたもので、ホストは%であり、任意のIPアクセスに使用できます。
(または、コマンドを使用して、リモートアクセス用の新しいユーザーを作成できます。
CREATE USER ' new_user ' @ ' %' IDENTIFIED BY ' passwd ' ;
ここでhostは%であり、これは任意のIPにアクセスできることを意味します。プラグインはmysql_native_passwordでなければなりません。そうでない場合、クライアントは接続できません。)
2.ユーザーに力を与える
GRANT ALL ON *。* TO 「アプリ」 @ 「%」 ; - 割り当て権限にデータベースを操作するユーザーの権限に、そしてここで私は、すべての権限を割り当てられていました
3.権限を更新する
フラッシュ特権 ;
4.ローカルnavicate接続テストが成功しました。
発生した問題:
1. mysql -uroot -pを実行すると、プロンプトが次のようになることがあります。
エラー1045(28000):ユーザー 'root' @ 'localhost'のアクセスが拒否されました(パスワードを使用:NO)
2つの方法:
1. my.ini構成ファイルを変更します。
mysql 8.0をWindowsにインストールします。構成ファイルはC:\ ProgramData \ MySQL \ MySQL Server 8.0の下に配置されます。このC:\ ProgramDataは隠しフォルダーです。表示するには、ビューの隠しファイルを開いて設定する必要があります。
[mysqld]の下の任意の行に追加します。skip-grant-tables、Mysqlサービスを保存して再起動します(この方法でログインした後でパスワードを変更した後、構成ファイルでこのコード行を削除します)ただし、一部のコンピューターでは、変更後にmysqlサービスを再起動できません。この場合、以下の方法2を参照してください。
2.以下のコードを実行し、rootで再度ログインします。
mysqld --shared-memory --skip-grant-tables
2.パスワードを変更すると、次のエラーが報告されます。
エラー1819(HY000):パスワードが現在のポリシー要件を満たしていません。
これは、パスワードがパスワードの複雑さの要件を満たしていないためですが、1234の設定のようにパスワードをそれほど複雑に設定したくない場合があることを私たちは自分で知っていることがあります。どうすればよいですか。次の方法を使用して、パスワードの複雑さの要件を変更できます。
1.プラグインを表示します。
' plugin_dir%'のような 変数を表示します。
C:\ Program Files \ MySQL \ MySQL Server 8.0 \ lib \ plugin \
プラグインディレクトリを開いて、パスワード検証プラグインを表示します
2.プラグインをインストールする
my.iniファイルに次の文を追加します。
#プラグインディレクトリ PLUGIN_DIR = " C:\プログラムファイル\のMySQL \ MySQLサーバ8.0 \ libに\プラグイン" #パスワードポリシー プラグイン -load = validate_password.dll の#永久使用プラグインの 検証 -password = FORCE_PLUS_PERMANENT
validate-passwordにはいくつかの形式があります。
オン:プラグインを使用する
オフ:プラグインを閉じます
FORCE:プラグインを強制的に使用する
FORCE_PLUS_PERMANENT:プラグインを永続的に使用します
コードを実行してプラグインをインストールします。
INSTALL PLUGIN validate_password SONAME ' validate_password.dll ' ;
パスワードポリシーを表示:
グローバル変数は、表示のように 「%% validate_password 」; SETグローバルvalidate_password.policy = LOWと、- セットパスワードレベルLowに SETグローバルvalidate_password_length = 4 ; - 設定パスワードの長さは、より大きくても又は4に等しくてもよいです
もう一度パスワードを変更してください。