MySQL 8.0 に移行する際の注意点 (要約)

MySQL 8.0 に移行する際の注意点 (要約)

パスワードモード

PDO::__construct(): サーバーがクライアントに不明な認証方法を要求しました [caching_sha2_password]

mysql8 以降、デフォルトのパスワード モードは caching_sha2_password に変更されます。新しいモードには新しいドライバーが必要です。少なくとも pdo/navicat はまだ提供されていないため、古い mysql_native_password モードに切り替える必要があります。

`mysql_native_password`: 7.0 以下 `caching_sha2_password`: 8.0 以上

1. my.cnfはデフォルトのパスワードモードを設定します

[mysqld]
デフォルト認証プラグイン=mysql_native_password

2. アカウントのパスワードモードを更新する

# 新しいアカウントを作成します。create user 'root'@'%' identified with mysql_native_password by '123456';

# 既存のアカウント alter user 'root'@'%' identified with mysql_native_password by '123456';

3. 承認が必要な場合

# 承認はアカウント作成と組み合わせることはできません。 grant オプションを使用して、*.* のすべての権限を 'root'@'%' にのみ付与できます。
権限をフラッシュします。

パスワードの複雑さに関するポリシー

エラー 1819 (HY000): パスワードが現在のポリシー要件を満たしていません

これはパスワードの複雑さの検証ポリシーによって発生します。これをオフにしてから設定できます。

グローバルvalidate_password.policyを0に設定します。
グローバルvalidate_password.lengthを6に設定します。

デフォルトのエンコーディング

PDO::__construct(): サーバーはクライアントに不明な文字セット (255) を送信しました。開発者に報告してください。

mysqlサービスのデフォルトのエンコーディングを設定する

# デフォルトの Homebrew MySQL サーバー設定
[クライアント]
デフォルトの文字セット=utf8mb4

[mysql]
デフォルトの文字セット=utf8mb4

[mysqld]
デフォルト認証プラグイン=mysql_native_password
文字セットサーバー=utf8mb4
照合サーバー=utf8mb4_general_ci

リモートアクセス

1. my.conf のローカル監視をコメントアウトする

[mysqld]
#bind_address=127.0.0.1

2. アカウントのホストを更新する

mysql.user を更新し、host='%' を設定し、user='root' にします。

MySQL 8.0 への移行時の注意事項(まとめ)は以上です。MySQL 8.0 への移行に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL 8.0 の新機能の落とし穴と解決策についての簡単な説明 (要約)
  • MySQL 8.0.20でNavicatをインストールして接続する方法と注意すべき点
  • JDBC を使用して Mysql 8.0.11 に接続するときに発生するさまざまなエラーを解決する方法
  • MySQL 8.0の落とし穴の詳細な説明
  • MySql 8.0 と対応するドライバー パッケージの一致に関する注意事項

<<:  Alibaba Cloud ドメイン名と IP バインディングの手順と方法

>>:  Vue+echarts で積み上げ棒グラフを実現

推薦する

JavaScript 配列 sort() メソッドの基本的な使い方と落とし穴

序文日常のコード開発では、配列のソートに関連する操作が多数あります。JavaScript では、so...

Docker を使用した ElasticSearch:7.8.0 クラスターのインストールに関する詳細なチュートリアル

ElasticSearch クラスターは、クラスターを構築するための動態請求的方式と靜態配置文件をサ...

Vue ユニットテストに関する予備調査

目次序文なぜユニットテストを導入するのですか?ユニットテストの概要テスト開発パターン1. テスト駆動...

Linuxシステムの入出力管理とvimの共通機能の詳細な説明

####システム内の入出力の管理#### 1. システムの入力と出力のリダイレクトを理解する入力リダ...

MySQL の nvl() 関数に似た ifnull() 関数についての簡単な説明

IFNULL(式1,式2) expr1 が NULL でない場合、IFNULL() は expr1 ...

DockerとVMwareの競合を解決する

1. Dockerの起動の問題:問題は解決しました: Hyper-V をオンにする必要があります (...

CSS3ダイヤモンドパズルはdivのみを回転し、背景画像は回転しない機能を実現します

需要背景プロジェクトはVueを使用して作成され、ビジネス要件にはパズル効果があります。デフォルトの背...

MySQLメモリストレージエンジンに関する知識

メモリストレージエンジンに関する知識ポイントメモリ ストレージ エンジンは日常業務ではほとんど使用さ...

MySQL の 6 つの一般的な制約タイプの詳細な説明

目次序文1.nullでない2. ユニーク3. デフォルト4.主キー自動増分主キー5. 外部キー6.チ...

MySQLのネクストキーロックのロック範囲についての簡単な説明

序文ある日、突然 MySQL の次のキー ロックについて尋ねられ、私の即座の反応は次のようなものでし...

CentOS 7 で yum を使用して MySQL 5.7.20 をインストールする最も簡単な方法

CentOS7 のデフォルトのデータベースは mariadb ですが、mysql を使っている人も多...

JSは10進数を16進数に変換するサンプルコードを実装します

序文コードを書くと、時々基数変換の問題に遭遇します。一般的な変換には、2進数、8進数、10進数、16...

HTML の値属性と名前属性の機能と使用法の紹介

1. ボタンで使用される値は、「OK」、「削除」など、ボタンに表示されるテキストを指します。 2. ...

js に基づいて大きなファイルのアップロードとブレークポイントの再開を管理する方法

目次序文フロントエンド構造バックエンド構造(ノード+エクスプレス) FormDataに基づくファイル...

ヘッダーのチェックボックスをテキスト実装コードに変更するための選択テーブルを持つ要素

方法1: テーブル属性を使用する: header-cell-class-name テーブルインターフ...