MySQLをOracle社からダウンロード
MySQLをOracle社のサイトからダウンロードします。 ( https://dev.mysql.com/ ) または、yum(dnf)リポジトリからのオンラインインストールが出来る。
PKGの依存関係解決のため、MySQL公式yumリポジトリを利用する。
① yumリポジトリRPMファイルをダウンロードし、インストール
② MySQLをインストール
③ MySQLサーバーを起動(初回起動時にだけデータベースの初期化)
MySQL公式yumリポジトリをシステムのリポジトリリストに追加登録する。(MySQLの公式サイトからDLできるRPMファイルをinstallすることで登録出来る。
https://dev.mysql.com/downloads/repo/yum/ にアクセス。
今回は、CentOS Stream9なので、↑の一番上のRed Hat Enterprise Linux 9 / Oracle Linux 9をDLする。
この画面に切り替わるが、サインアップやログインしないでDLするので No thanks, just start my download. クリックしてDLを始める。
ローカルPCに mysql84-community-release-el9-1.noarch.rpm ファイルがDLできた。
一旦WinSCPで、該当サーバーに転送する。↓
転送出来たところでRPMファイルをroot権限で実行する。
[root@flask ~]# cd /home/tama
[root@flask tama]# ll
合計 20
-rwxr--r-- 1 tama tama 369 2月 17 09:06 err_mailadd_chek.sh
drwxr-xr-x 4 tama tama 34 2月 20 20:40 flask_web
-rw-r--r-- 1 tama tama 13139 3月 15 21:55 mysql84-community-release-el9-1.noarch.rpm
drwxr-xr-x 3 tama tama 48 2月 22 08:06 python_pure
[root@flask tama]# dnf localinstall mysql84-community-release-el9-1.noarch.rpm
パッケージのダウンロード:
トランザクションを確認しています
トランザクションの確認に成功しました。
トランザクションをテストしています
トランザクションのテストに成功しました。
トランザクションを実行しています
準備中 : 1/1
インストール中 : mysql84-community-release-el9-1.noarch 1/1
検証中 : mysql84-community-release-el9-1.noarch 1/1
インストール済み:
mysql84-community-release-el9-1.noarch
完了しました!
[root@flask tama]#
一応リポジトリに追加されたか確認する↓
[root@flask tama]# dnf repolist enabled
repo id repo の名前
appstream CentOS Stream 9 - AppStream
baseos CentOS Stream 9 - BaseOS
epel Extra Packages for Enterprise Linux 9 - x86_64
epel-cisco-openh264 Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64
epel-next Extra Packages for Enterprise Linux 9 - Next - x86_64
extras-common CentOS Stream 9 - Extras packages
mysql-8.4-lts-community MySQL 8.4 LTS Community Server → うまくいった
mysql-connectors-community MySQL Connectors Community → うまくいった
mysql-tools-8.4-lts-community MySQL Tools 8.4 LTS Community → うまくいった
この後、情報にあったのがMySQLモジュールリストを無効化する必要があるとのことだった。??なんで?と思って調べたらMySQLリポジトリには、複数のバージョンや
関連するサブリポジトリ(例: MySQL 5.7、MySQL 8.0、MySQL Cluster など)が含まれていて、デフォルトでは最新バージョン(現在は
MySQL 8.0)が有効化されているが、
他のバージョンやモジュールが有効になっていると、インストール時に競合が発生する可能性がある。とのことだった。
新規インストールだが、念のためMySQLモジュールリストを無効化する。( dnf module disable mysql )
うまく無効化できた。それではdnf を使ってインストールする。
[root@flask tama]# dnf install mysql-community-server
鍵をインポートする↑
どうやら上手く行ったらしい。mysqldを起動する。
[root@flask tama]# systemctl start mysqld.service
また、再起動しても恒久的に起動するようebable しておく
[root@flask tama]# systemctl enable mysqld.service
起動も上手くいった。最後は、初期設定を残すのみ。
MySQLの初回起動時にデータベースファイルが初期化される。データベースファイルは /var/lib/mysql ディレクトリ下に作成される。設定ファイルは
/etc/my.cnf となる。
項目 | ファイルまたはディレクトリ |
データベースディレクトリ | /var/lib/mysql/ |
設定ファイル | /etc/my.cnf |
データベースファイル初期化時にMySQLの管理者PWが設定される。初期PWは、 /var/log/mysqld.log に記載されているので、一旦初期PWをつかってMySQLに接続し、
root のPWを変更して終了する。
[root@flask tama]# grep 'temporary password' /var/log/mysqld.log
temporary passwordの初期PWを使って、MySQLに接続する
[root@flask tama]# mysql -u root -p
Enter password: 調べたPWを入力する
mysql>のプロンプトになったので、問題なく接続できた。rootのPWを変更する。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '変更するPW';
上手くいった!
まずは、MySQLのインストールは、終了となります。特に問題なくinstall出来ました。