さくらVPS【CentOS8】MySQL

さくらVPSでカスタムインストールしたCentOS8にMySQLをインストール

さくらVPSでカスタムインストールしたCentOS8(以下、CentOS8Server)にMySQL8.0をインストールしました。

◎MySQL8.0のインストール

  • MySQL8.0をdnfコマンドでインストールしました。
    # dnf install mysql-server mysql-devel
    # mysql --version
    mysql  Ver 8.0.17 for Linux on x86_64 (Source distribution)
    #
    
  • systemctlコマンドでサービスの自動起動を設定しました。
    # systemctl enable mysqld
    # systemctl is-enabled mysqld.service
    enabled 
    #
    

◎MySQL8.0の設定

  • systemctlコマンドでMySqlのサービスを起動しました。
    # systemctl start mysqld
    #
    
  • 「mysql_secure_installation」コマンドでMySQL8.0の初期設定を行いました。rootパスワードを設定し、以下のように質問に答えました。
    (最初、「Disallow root login remotely?」を「Y」としたんですが、その場合、phpMyAdminのルートパスワードでのログインができませんでした。)

    # mysql_secure_installation
    :
    Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y
    :
    Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
    Success.
    :
    Disallow root login remotely? (Press y|Y for Yes, any other key for No) : N
    Success.
    :
    Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
     - Dropping test database...
    :
    Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
    Success.
    :
    All done! 
    #
    
  • パスワード無しででアクセス出来ないことを確認しました。
    # mysql
    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
    #
    
  • 設定したrootパスワードでアクセスできることを確認しました。

    # mysql -uroot -p
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    :
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    :
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    4 rows in set (0.03 sec)
    mysql> quit;
    Bye
    # 
    
  • MySQL8.0の設定ファイル(server.conf)を編集して、以下の変更を行いました。

    # cd /etc/my.cnf.d/
    # cp mysql-server.cnf mysql-server.cnf.org
    # nano mysql-server.cnf
    #
    
  • デフォルトのキャラクターセットを UTF-8 に変更「character-set-server = utf8」し、バイナリログを自動で削除する日数を7日に変更「expire_logs_days = 7」しました。
    [mysqld]
    character-set-server = utf8
    expire_logs_days = 7
    
  • MySQL8.0のサービスを再起動しました。
    # systemctl restart mysqld
    
  • 設定が変更されたことを確認し、MySQL8.0の設定を終了しました。。
    # mysql -uroot -p
    Enter password:
    mysql> show variables like 'char%';
    +--------------------------+----------------------------+
    | Variable_name            | Value                      |
    +--------------------------+----------------------------+
    | character_set_client     | utf8mb4                    |
    | character_set_connection | utf8mb4                    |
    | character_set_database   | utf8                       |
    | character_set_filesystem | binary                     |
    | character_set_results    | utf8mb4                    |
    | character_set_server     | utf8                       |
    | character_set_system     | utf8                       |
    | character_sets_dir       | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+
    8 rows in set (0.01 sec)
    
    mysql> show global variables like 'expire_logs_days';
    +------------------+-------+
    | Variable_name    | Value |
    +------------------+-------+
    | expire_logs_days | 7     |
    +------------------+-------+
    1 row in set (0.00 sec)
    
    mysql> quit;
    Bye
    #
    
<= さくらVPS【CentOS8】Apache | | さくらVPS【CentOS8】PHP =>
タイトルとURLをコピーしました