Tag: CentOS6/MySQL8

目次

関連ページ

参考情報

古いバージョンのアンインストール

  • 以下のコマンドで確認。
    yum list installed | grep mysql
  • 表示されたパッケージをアンインストール。
    yum remove mysql.x86_64 mysql-libs.x86_64 compat-mysql51.x86_64

インストール

  • 以下の手順でインストール。CentOS 6.10でも(el6-3)で良いらしい。
    # yum install -y yum-utils
    # yum install -y https://dev.mysql.com/get/mysql80-community-release-el6-3.noarch.rpm
    # yum repolist all | grep mysql
    # yum-config-manager --enable mysql80-community
    # yum install  mysql-server mysql-devel
    

設定

my.cnfの編集

  • innodb関連の設定はほとんど削除され、8.0.1以降の文字コードはデフォルトがutf8mb4となっている。MySQL8.0の文字コード設定 | blog.kotamiyake.me。これをふまえて最小限にする。
    [mysqld]
    collation-server=utf8mb4_bin
    validate_password.policy=LOW
    
  • 後でmysqlに接続し確認するとよい(先にrootのパスワードを設定する必要あり)
    mysql> show variables like "%char%";

rootパスワードの設定

  • 以下のコマンドでmysqldを起動。
    # service mysqld start
  • mysqldに表示されている一時パスワードを使って接続。「validate_password.policy=LOW」にしてないといろいろエラーとなるかも。
    mysql -uroot -p<一時パスワード>
    mysql> ALTER USER 'root'@'localhost' identified BY 'hoge';

サービスの起動と自動起動

  • 以下のコマンドで起動
    # service mysqld start
    # chkconfig mysqld on
    

安全に

mysql_secure_installation

トラブルシューティング

Unsupported redo log format (0). The redo log was created before MySQL 5.7.9

  • redo logのフォーマットが対応していないのが原因か。
  • 一度バックアップしてインストールしなおすのが原因か。

mysqldを起動しようとすると「Table 'mysql.component' doesn't exist」エラー。

  • 以下のようなエラーが発生。
    [ERROR] [MY-013129] [Server] A message intended for a client cannot be sent there as no client-session is attached. Therefore, we're sending the information to the error-log instead: MY-001146 - Table 'mysql.component' doesn't exist
  • /var/lib/mysqlを削除し、mysql:mysqlで作り直す。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-07-29 (水) 14:23:57