Help us understand the problem. What is going on with this article?

さくらVPSでCentOS7 5.MariaDBインストール

はじめに

自由にテスト出来るLinuxのサーバーがほしくて、さくらVPSで構築してみました。
順次手順をアップしていく予定です。

今回は、MariaDBをインストールします。
MariaDBは、「MySQL」から派生したオープンソースリレーショナルデータベースシステムです。

目次

  1. 申し込み
  2. CentOS7インストール
  3. SSH接続
  4. Apache・PHPインストール
  5. MariaDBインストール
  6. FTP接続
  7. sftp接続
  8. phpMyAdminインストール
  9. 環境のバックアップ
  10. Ruby On Railsインストール
  11. RailsプロジェクトをGitで共同開発

5.MariaDBインストール

古いバージョンが入っている場合、一度消去する

  • バージョンを確認

    $ rpm -qa | grep -i "mariadb"
    mariadb-libs-5.5.56-2.el7.x86_64
    
  • 5.5は古いので消す

    $ sudo yum -y remove mariadb mariadb-libs
    

インストール

  • リポジトリインストール

    $ curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
    
  • MariaDBインストール

    $ sudo yum install MariaDB-server
    
  • インストールチェック

    $ rpm -qa | grep -i "mariadb"
    MariaDB-common-10.2.14-1.el7.centos.x86_64
    MariaDB-server-10.2.14-1.el7.centos.x86_64
    MariaDB-compat-10.2.14-1.el7.centos.x86_64
    MariaDB-client-10.2.14-1.el7.centos.x86_64
    

初期設定

  • 設定をコピー
    以前は/usr/share/mysql/my-small.cnfをコピーしていましたが、my-small.cnfがなくなったので、コピーせずにserver.cnfを編集します。ので、とりあえずオリジナルを保存。

    $ sudo cp /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.org
    
  • server.cnfを編集。

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

    以下の2行を追加

    [client]
    default-character-set = utf8mb4    ### 文字コードをutf8
    [mysqld]
    character-set-server = utf8mb4     ### 文字コードをutf8
    

サービス登録と起動

  • OSを再起動しても起動するようにサービスを登録

    $ sudo systemctl enable mariadb.service
    
  • サービスを起動

    $ sudo systemctl start mariadb.service
    
  • 起動確認

    $ ps -ef | grep "mysql" | grep -v "grep"
    mysql    11092     1  0  4月17 ?      00:11:38 /usr/sbin/mysqld
    

セキュリティ設定

  • 設定実施

    $ sudo mysql_secure_installation
    Enter current password for root (enter for none): Enter
    Switch to unix_socket authentication [Y/n] n
    Change the root password? [Y/n] Y  ←rootパスワード設定yes
    New password:               ←任意のrootパスワードを付ける 
    Re-enter new password:      ←上記と同じパスワードを入力(確認用)
    Remove anonymous users? [Y/n] Y        ←匿名ユーザ削除Yes
    Disallow root login remotely? [Y/n] Y  ←リモートからのrootログイン禁止Yes
    Remove test database and access to it? [Y/n] Y ←testデータベース削除
    Reload privilege tables now? [Y/n] Y           ←今すぐリロード
    
  • ログイン確認

    上記で設定したrootのパスワードでログインしてみます。

    $ mysql -u root -p
    Enter password: ←上記設定で付けたパスワード(表示されない)
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MariaDB connection id is 20
    Server version: 10.2.14-MariaDB MariaDB Server
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    MariaDB [(none)]> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    +--------------------+
    3 rows in set (0.00 sec)
    MariaDB [(none)]> exit
    Bye
    

新規ユーザー登録

  • rootでログイン

    $ mysql -u root -p
    Enter password: ←上記設定で付けたパスワード(表示されない)
    
  • 全てのアクセス権限を持った新規ユーザー「dbuser」を登録

    MariaDB [(none)]> grant all privileges on *.* to dbuser@localhost identified by '任意のパスワード';
    Query OK, 0 rows affected (0.00 sec)
    
  • 「dbuser」ユーザ登録確認

    MariaDB [(none)]> select user from mysql.user where user='dbuser';
    +--------+
    | user   |
    +--------+
    | dbuser |
    +--------+
    1 row in set (0.00 sec)
    
  • 「dbuser」で再ログイン

    MariaDB [(none)]> exit
    Bye
    $ mysql -u dbuser -p
    Enter password: ←ユーザ登録時に付けたパスワード(表示されない)
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MariaDB connection id is 24
    Server version: 10.2.14-MariaDB MariaDB Server
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    MariaDB [(none)]>
    

DB動作確認

「test」データベースの中に「tbl_test」テーブルを作成し、1レコード追加します。

  • 「dbuser」でログイン

    $ mysql -u dbuser -p
    Enter password: ←ユーザ登録時に付けたパスワード(表示されない)
    
  • 「test」データベース作成

    MariaDB [(none)]> create database test;
    Query OK, 1 row affected (0.00 sec)
    
  • 「test」データベース確認

    MariaDB [(none)]> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | test               |
    +--------------------+
    4 rows in set (0.00 sec)
    
  • 「test」データベースへ接続

    MariaDB [(none)]> use test;
    Database changed
    MariaDB [test]>
    

    接続すると、プロンプトが「ariaDB [(test)]>」に変わる。

  • テーブル作成

    MariaDB [test]> create table tbl_test(num int, name varchar(50));
    Query OK, 0 rows affected (0.00 sec)
    
  • テーブル確認

    MariaDB [test]> show tables;
    +----------------+
    | Tables_in_test |
    +----------------+
    | tbl_test       |
    +----------------+
    1 row in set (0.01 sec)
    
  • レコード追加

    MariaDB [test]> insert into tbl_test values(1, '山田太郎');
    Query OK, 1 row affected (0.01 sec)
    
  • レコード確認

    MariaDB [test]> select * from tbl_test;
    +------+--------------+
    | num  | name         |
    +------+--------------+
    |    1 | 山田太郎     |
    +------+--------------+
    1 row in set (0.00 sec)
    
  • ログアウト

    MariaDB [test]> exit
    Bye
    

次回

次回はFTP接続の設定を行います。

前回:Apache・PHPインストール
次回: FTP接続

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした