CentOS7のMariaDB(Mysql)の設定、使い方

目次

MariaDBとは?

mysql開発者が作ったデータベースで、現在もサポートを続けています。(Mysqlのサポートは終了しました。) CentOS7のレポジトリには、mysqlではなく、MariaDBが入っています。なお、MariaDBのシリーズは3系統あります。
MariaDBバージョン
MariaDB5.5シリーズ MysQl5.5までをサポート
MariaDB10.0シリーズ Mysql5.6を取り入れ、MariaDB独自機能があり。
MariaDB10.1シリーズ Mysql5.7を取り入れ、MariaDB独自機能あり。
CentOS7のMariaDB、5.5.52が入っていました。(2017/1/20確認)

バージョン確認

MariaDB インストール

最新版をリポジトリから取得

まずはじめに、CentOS7の初期設定(2019年11月20日)ではMariaDB5.6シリーズが入っているため、 最新版のMariaDB10を入れるために、リポジトリより取得します。

最新版インストール

古いやり方と違い、「MariaDB」と大文字が混在しているところに注意。
古いバージョンのやり方(最新版を利用するときは、こちらは使わない。)
インストールする前にレポジトリにあるMariaDBのバージョンを確認したい場合は、下記のコマンドで確認できます。

MariaDBアップデート

最新のバージョンにアップデートする場合は、下記ページ参照 MariaDBのアップデート・更新

MariaDBの始動設定

MariaDBを起動させる

MariaDB再起動時の自動起動設定

現在の起動しているかどうかの状態確認

MariaDB再起動時の立ち上げ設定の確認

日本語の文字化け対策

/etc/my.cnf.d/server.cnfの編集

server.cnfを開いてください※utf8mb4を使用する場合は、「utf8」のところを「utf8mb4」に変更してください。 下記の内容を追記してください。 2019/11/20、公式サイトで日本語を扱うためには、server.cnfの以下の場所を変更するように書かれているので以下の箇所のみ変更したが問題なかった。

セキュリティ初期設定

①mysql_secure_installation

コンソール(ターミナル)でmysql_secure_installationコマンドで初期設定をします。 ①次のように表示されたらEnterを押してください。 ②Unix_Socketを利用するか聞かれるので 「n」を選択してください。 ②rootのパスワード設定するか? 「y」を選択してください。 ③rootのパスワードを入力してください。 ④rootのパスワードを再入力してください。 ⑤匿名ユーザーを削除するか? 「y」を選択してください。 ⑥rootユーザーのリモートログインをブロックするか?「y」を選択してください。 ⑦テストDBを削除するか?「y」を選択 してください。 ⑧ユーザ権限テーブルをリロードするか? 「y」を選択してください。

データベースの管理

ログイン

まずはじめに、Console(ターミナル)でMariaDBにログインしてください。コマンド入力後にパスワードを求められます。

データベースの確認

データベースを確認するには、下記のSQL文を入力してください。

データベースの追加作成

データベースを作成するには、下記のSQL文を入力してください。※utf8を使用する場合は、「utf8mb4」のところを「utf8」に変更してください。

作成したデータベースに、権限のあるユーザー名とパスワードを設定

MariaDBのユーザー一覧を見る

ユーザーのパスワードを変更する

ユーザーの削除

データベースの削除

データベースの名前変更

データベース名の変更は、バグがおき易いためrenameは使わないようにすること。 旧データベースからバックアップを取る。
※MariaDB(Mysql)へのログインは必要ありません。
MariaDB(Mysql)にログインしてください。 新しいデータベース名を作成する。※utf8を使用する場合は、「utf8mb4」のところを「utf8」に変更してください。 新しいデータベースにデータを流し込む
新データベース名でMysql(MariaDB)にデータを流し込んだあとは、バックアップファイル名.sqlを削除しておいてください。

データベースの一部移行(指定したデータベースを引っ越し)

旧サーバーの元データからバックアップの作成(エクスポート)

旧サーバーからデータのダウンロード

sftpソフトなどでdump.sqlを作成したディレクトリに移動し、ダウンロード。サーバー上のdump.sqlは安全のため削除。

新サーバーへデータのアップロード

sftpソフトなどで新規のサーバーの任意の場所にbackup.sqlをアップロード。

新サーバーにデータのインストール(インポート)

ターミナルで以下のコマンドでデータベース作成※utf8を使用する場合は、「utf8mb4」のところを「utf8」に変更してください。 ターミナルでbackup.sqlを置いてあるディレクトリにcdで移動し、下記のコマンドを実行。 あらかじめ、新規サーバーの初期設定(MariaDB)で設定していたrootのパスワードを入力。成功したら、念のためサーバー上のbackup.sqlは安全のため削除。

ユーザーの追加

WordPressのデータの引越しでは、WordPressのconfのデータを参照し、ユーザーを追加。

ユーザー一覧の確認

データベースの完全移行(すべてのデータベースを引っ越し)

参照:MySQLのバックアップ/復元(ダンプ/インポート/dump/import) 基本コマンド メモ – Qiita

データの作成(エクスポート)

ターミナルでdump.sqlを作成したいディレクトリに移動(cd)し、以下のコマンドを実行。

データのダウンロード

sftpソフトなどでdump.sqlを作成したディレクトリに移動し、ダウンロード。サーバー上のdump.sqlは安全のため削除。

データのアップロード

sftpソフトなどで新規のサーバーの任意の場所にdump.sqlをアップロード。

データのインストール(インポート)

ターミナルでdump.sqlを置いてあるディレクトリにcdで移動し、下記のコマンドを実行。 あらかじめ、新規サーバーの初期設定(MariaDB)で設定していたrootのパスワードを入力。成功したら、念のためサーバー上のdump.sqlは安全のため削除。

ユーザーの追加

ユーザー一覧の確認

MariaDBの初期化

何かの手違いでデータベースを初期化したい場合