ホーム > カテゴリ > サーバー構築・運用・Linux >

MariaDBの最新版をインストールする [CentOS]

CentOSで各種サーバー構築(目次)

CentOSに最新版のMariaDBをインストールする方法です。

既にMariaDBが存在する場合

// 削除する
sudo systemctl stop mariadb
sudo systemctl disable mariadb
sudo yum remove mariadb

// /var/lib/mysql/mysqlを削除
sudo cd /var/lib/mysql
sudo rm -rf mysql

/var/lib/mysql/mysqlのディレクトリを削除しないとmysql_secure_installationを実行した際に「ERROR 1146 (42S02) at line 1: Table 'mysql.global_priv' doesn't exist」(mysql.global_privが存在しない)というエラーが発生します。

最新版のインストール

// yumレポジトリの設定
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

// MariaDBのインストール
sudo yum install MariaDB-server

文字コードの設定(UTF8)

sudo vi /etc/my.cnf.d/server.cnf

// 以下のコードを追加する
[mariadb]
character-set-server=utf8mb4

[client-mariadb]
default-character-set=utf8mb4

※utf8mb4は絵文字対応のUTF8。絵文字なしはutf8にして下さい。

自動起動、サービス開始、テスト

// 自動起動設定
sudo systemctl enable mariadb

// 開始
sudo systemctl start mariadb

// MariaDBのテスト
mysql
※quit or exitで終了

初期設定

// 初期設定ウイザード
sudo mysql_secure_installation

  // ルートの現在のパスワードを入力します
  Enter current password for root (enter for none):
  Enter

  // unix_socket認証を有効にしますか?
  Enable unix_socket authentication? [Y/n]  
  n

  // rootのパスワードを設定しますか?
  Set root password? [Y/n]
  y 

  // 匿名ユーザーを削除しますか?
  Remove anonymous users? [Y/n]
  y

  // リモートでrootログインを許可しないようにしますか? 
  Disallow root login remotely? [Y/n]
  y

  // テストデータベースを削除してアクセスしますか?
  Remove test database and access to it? [Y/n]
  y

  // 設定をすぐに反映するか? 
  Reload privilege tables now? [Y/n]
  y


// rootでログイン
mysql -u root -p
 
show databases;
※quit or exitで終了

Ruby on Railsで使用する場合

以下をインストールしないとbundleの時にmysql2のエラーとなる。

sudo yum -y install MariaDB-shared

参考URL

CentOS 7 に MariaDB Community Server 最新版をインストール
4時間目 WordPressに必要なソフトウェアをインストールしよう(MariaDB編)





関連記事



公開日:2019年09月18日 最終更新日:2019年11月30日
記事NO:02774