くさび コンピュータにインストールされている MySQL のバージョンが比較的古く、おそらくバージョン 5.1 であったため、JSON フィールド機能がサポートされていませんでした。開発部門が開発した最新のエディター製品は、JSON フィールドの機能を使用します。 そのため、MySQL のバージョンをアップグレードする必要があります。アップグレードの対象バージョンは MySQL 5.7.30 です (最新バージョンは 8.x ですが、基本的には 5.7 で十分です)。 アップグレードとインストールのプロセス中にいくつかの落とし穴が見つかったので、この記事を使用してそれらを記録しました。 古いバージョンをアンインストールする まず、古いバージョンをアンインストールする必要があります。アンインストールは実際には非常に簡単です。MySQL サービスを削除するだけです。まず、CMD を開き、MySQL bin ディレクトリに cd して、次のコマンドを入力して MySQL サービスを削除します。
次に、古い MySQL 関連のフォルダと関連する環境変数の設定を削除します。
バージョン5.7.30をインストール 次のステップはバージョン 5.7.30 をインストールすることです。最初のステップはそれをダウンロードすることです。 MySQLをダウンロード ダウンロードアドレスは https://dev.mysql.com/downloads/mysql/ です。 MySQLを解凍する ダウンロード後、インストールしたいディレクトリに解凍します。たとえば、私のディレクトリは次のとおりです。 環境変数の設定 図に示すように、システム変数パスの後に D:\Program Files (x86)\mysql-5.7.30-winx64\bin を追加します。 設定ファイルmy.iniを作成する バージョン 5.7.30 のインストール パッケージには、デフォルトでは構成ファイル my.ini が付属していません。したがって、my.ini ファイルを自分で作成する必要があります。 my.ini ファイルを手動で作成し、次の内容を入力します。 [mysql] # mysqlクライアントのデフォルトの文字セットをdefault-character-set=utf8に設定します [mysqld] # ポート 3306 を設定 port = 3306 # mysql インストールディレクトリを設定します basedir=D:\Program Files (x86)\mysql-5.7.30-winx64 # mysqlデータベースのデータ保存ディレクトリを設定します。datadir=D:\Program Files (x86)\mysql-5.7.30-winx64\data # 最大接続数を実行する max_connections=200 # サーバーが使用するデフォルトの文字セットは、8 ビットの latin1 文字セットです。character-set-server=utf8 # 新しいテーブルを追加するときに使用されるデフォルトのストレージエンジン default-storage-engine=INNODB ここでは回避する必要がある落とし穴がいくつかあります。 my.ini 注 1 my.ini は ANSI 形式で保存する必要があります (構成ファイルはデフォルトで ANSI 形式でエンコードされ、誤って UTF-8 などの他の形式で保存される可能性があります)。そうしないと、後続のサービスが起動できなくなる可能性があります。 my.ini の形式がわからない場合は、次のように保存できます。 my.ini 注 2 以前のバージョンからバージョン 5.7 にアップグレードする場合は、以前の構成ファイルをコピーするだけで、以前の構成を保持できます。以前の低バージョンで使用されていた多くのパラメータは高バージョンには適さなくなっているため、この時点では注意が必要です。変更しないと、その後のサービスの起動は失敗します。 たとえば、私が遭遇したエラーの原因となったパラメータの 1 つは次のとおりです。 #table_cache=256 // 低バージョン table_open_cache=256 // 高バージョン 旧バージョンの設定を維持する必要があり、新バージョンのパラメータ変更に精通していない場合は、設定ファイルにログ機能を追加することができます。これにより、エラーが発生したときに、詳細をログで確認できます。 ログ パスを次のように構成します。
起動に失敗した後、次のようなログでエラーを確認できます。 その他の可能性のあるエラー パラメータ:
MySQLサービスをインストールする 最も重要なステップは、MySQL サービスをインストールすることです。 まず、cmd インターフェイスに入り、MySQL の bin ディレクトリに CD し (ここでは bin ディレクトリで実行する必要があることに注意してください)、次のコマンドを実行します。 mysqld --install [サービス名、デフォルトはMySQL] スクリーンショットは次のとおりです。 コマンドを実行すると、サービスが正常にインストールされたことを示すメッセージが表示されます。 注1 「サービスのインストール/削除が拒否されました」というエラー メッセージが表示される場合があることに注意してください。 その他の手順に実行権限がない場合は、管理者として実行してください。 注2 一部のコンピュータでは、MSVCP120.dll が見つからないというエラーが発生します。 このエラーは、vcredist がインストールされていないために発生します。vcredist のダウンロード アドレス: https://www.microsoft.com/zh-CN/download/details.aspx?id=40784 MySQLを初期化する MySQL 5.7 にはデータ ディレクトリがないため、MySQL を初期化してデータ ディレクトリを作成する必要があります。これも比較的簡単です。次のコマンドを実行するだけです。 mysqld --initialize-insecure --user=mysql ここで「mysqld --initialize」の使用を紹介している記事がいくつかあることに注意してください。「mysqld --initialize-insecure」と「mysqld --initialize」の違いは、前者は空のパスワードを作成し、後者はランダムなパスワードを作成することです。 したがって、ランダムなパスワードを出力するには、「mysqld --initialize」を使用し、できれば「--console」も使用してください(「--console」は Windows に限定されていることに注意してください)。 –user=msyql は主に、Linux または Unix システムで MySQL アカウントにデータ ディレクトリを承認するために使用されます。Windows で使用する必要はありません。 データ初期化の参照リンク: https://dev.mysql.com/doc/mysql-installation-excerpt/5.7/en/data-directory-initialization.html 初期化が完了すると、データ ディレクトリが生成されます。 注1 初期化中にエラーが発生した場合: 「–initialize が指定されましたが、データ ディレクトリにファイルがあります。中止します。」 これは、データ ディレクトリを手動で作成し、そこにファイルが含まれている可能性があるためです (たとえば、アップグレード中にこれを行った可能性があります)。 この場合、データ ディレクトリを削除するだけで済みます。 後でアップグレードを検討できます。
MySQLサービスを開始する Windows で MySQL サービスを開始するには、次のコマンドを使用できます。
MySQLサービスのパスワードを設定する パスワードを設定するには、mysqladmin を使用します。 MySQL サービスを開始した後、次のコマンドを入力します。 古いパスワードを入力し(前の操作では、古いパスワードは空白です)、次に新しいパスワードを入力し、新しいパスワードを確認すると、設定が成功します。 注1 前回の初期化時にパスワードの初期化を行わず、誤って初期化パスワードを忘れてしまった場合、以下の問題が発生し、ログインやパスワードの変更ができなくなります。 次の手順に従って解決してください。 スキップ許可テーブルを追加 設定ファイル my.ini に skip-grant-tables を追加します。 MySQLサービスを再起動する まず MySQL サービスを停止し、次に MySQL サービスを開始します。 パスワードを変更する まず、次のようにして、mysql にログインします。この時点ではパスワードは必要ありません。 SQL ステートメントを使用してパスワードを変更するには、まず mysql を使用し、次にパスワードを更新します。 次に、mysql を終了します。 skip-grant-tablesを削除し、MySQLサービスを再起動します。 まず、my.ini から skip-grant-tables を削除し、net stop mysql と net start mysql を使用してサービスを再起動します。 古いMySQLデータを5.7にアップグレードする 古いデータをアップグレードするには、バージョン 5.x からアップグレードする場合は、基本的に、関連するデータ ファイルをデータ フォルダーにコピーするだけです。 innodb を使用する場合は、「ibdata」などのファイルをコピーする必要があることに注意してください。 それ以外の場合、レポートは存在しません。
Innodb は、トランザクション (行レベル) をサポートする MYSQL データベース用の一般的なデータベース エンジンです。ibdata はファイル データの保存に使用され、ライブラリ名を持つフォルダー内のテーブル ファイルは単なる構造です。MySQL の新しいバージョンではデフォルトで innodb が使用されるため、ibdata1 ファイルがデフォルトで存在します。このファイルが欠落していると、一部のデータ テーブルが失敗します。 アップグレード プロセス中にデータが破損した場合は、修復コマンドを使用して修復できます。
上記の操作が正常に完了したら、問題ありません。それでも問題が解決しない場合は、アップグレードコマンドmysql_upgradeを使用してデータをアップグレードしてみてください(このコマンドを使用してアップグレードすることもお勧めします。そうしないと、その後の問題の特定が困難になる可能性があります)。 //mysql をアップグレードします。mysql_upgrade は互換性のないテーブルをチェックし、許可テーブルを更新します。 mysql_upgrade -uroot -p アップグレードの速度はデータ ディレクトリのサイズによって異なります。 要約する MySQL 5.7.30 の詳細なインストールとアップグレードのチュートリアルに関するこの記事はこれで終わりです。MySQL 5.7.30 のインストールとアップグレードに関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: nginx がドメイン名アクセス用に設定されている場合にドメイン名の後に 2 つのスラッシュ // が表示される問題の解決方法
最初のステップはTypeScriptをグローバルにインストールすることですnpmを使用してインストー...
CSS の開発履歴についてはここでは紹介しません。ブログを書いている理由の 1 つは、フロントエンド...
問題を見つける最近、プロジェクトで問題が発生しました。接続が多すぎるため、「接続が多すぎます」という...
この記事の例では、要素のマウスドラッグ効果を実現するためのvue+tsの具体的なコードを参考までに共...
JSランニング三部作js実行コードは3つのステップに分かれています構文解析プリコンパイル解釈Jav...
アプリケーション全体を CentOS にデプロイする必要があるため、当然ながらデータベース操作は不可...
メタタグは、HTML言語のヘッド領域にある補助タグです。HTML文書のヘッダーにあるヘッドタグとタイ...
目次スムーズなアニメーションの基準方法1: Chromeデベロッパーツールを使用する方法 2: フレ...
数日前、国産の XHTML エディタを紹介しました。今日は、有名な海外の Web デザイン ブログl...
1. 環境: MySQL-5.0.41-win32 Windows XP プロフェッショナル2. テ...
最近、WeChatアプレットを書いていたとき、WeChatアプレットではすべてのリクエストインターフ...
導入Linux は、ファイル、ログ、電子メール、バックアップなどを自動的に生成できるシステムです。ハ...
MongoDB は高性能なデータベースですが、使用していくうちにパフォーマンスの問題が発生することが...
目次ウェブAPI DOM DOMツリーDOM要素取得方法ドキュメントオブジェクトのプロパティイベント...
<br />最も実用的なものを選んで話しましょう。まず、勤務先の都市を慎重に選ぶ必要があ...