📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

 
(同じ利用者による、間の9版が非表示)
3行目: 3行目:
ここでは、RDBのデータベースサーバであるMariaDB 10.5.2(2020/4/26現在の最新版)を例に挙げる。<br>
ここでは、RDBのデータベースサーバであるMariaDB 10.5.2(2020/4/26現在の最新版)を例に挙げる。<br>
<br>
<br>
CentOSおよびSUSEでは、MariaDBのリポジトリを追加して、MariaDBをインストールすることを推奨する。<br>
RHELおよびSUSEでは、MariaDBのリポジトリを追加して、MariaDBをインストールすることを推奨する。<br>
<br>
<br>
また、インストールの詳細に関しては、[https://mariadb.com/kb/en/installing-mariadb-with-zypper/ こちらの公式Webサイト]を参照すること。<br>
また、インストールの詳細に関しては、[https://mariadb.com/kb/en/installing-mariadb-with-zypper/ こちらの公式Webサイト]を参照すること。<br>
9行目: 9行目:


== MariaDBのインストール ==
== MariaDBのインストール ==
==== CentOS ====
==== RHEL ====
===== リポジトリを追加してインストール(推奨) =====
===== リポジトリを追加してインストール(推奨) =====
MariaDBのリポジトリを追加するために、/etc/yum.repos.dディレクトリにMariaDB.repoファイルを作成する。<br>
MariaDBのリポジトリを追加するために、/etc/yum.repos.dディレクトリにMariaDB.repoファイルを作成する。<br>
MariaDB.repoファイルには、リポジトリにあるパッケージのデジタル署名を検証するために使用されるGPG公開鍵を、自動的にフェッチするgpgkey行を含む。<br>
MariaDB.repoファイルには、リポジトリにあるパッケージのデジタル署名を検証するために使用されるGPG公開鍵を、自動的にフェッチするgpgkey行を含む。<br>
これにより、yumおよびdnf、rpmユーティリティは、インストールするパッケージの整合性を検証できる。<br>
これにより、dnf、rpmユーティリティは、インストールするパッケージの整合性を検証できる。<br>
  sudo vi /etc/yum.repos.d/MariaDB.repo
  sudo vi /etc/yum.repos.d/MariaDB.repo
<br>
<br>
19行目: 19行目:
  [mariadb]
  [mariadb]
  name = MariaDB
  name = MariaDB
  baseurl = http://yum.mariadb.org/10.5.2/centos7-amd64/
  baseurl = https://mirror.mariadb.org/yum/<MariaDBのバージョン>/rhel/<RHELのバージョン>/x86_64/
  gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
  gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
  gpgcheck=1
  gpgcheck=1
29行目: 29行目:
リポジトリの追加および設定を行った後、以下のコマンドを実行してMariaDBをインストールする。<br>
リポジトリの追加および設定を行った後、以下のコマンドを実行してMariaDBをインストールする。<br>
(追加したリポジトリには、MariaDBサーバ / クライアントの他に、ユーティリティやライブラリ、プラグイン等、関連するソフトウェアも含まれる)<br>
(追加したリポジトリには、MariaDBサーバ / クライアントの他に、ユーティリティやライブラリ、プラグイン等、関連するソフトウェアも含まれる)<br>
  sudo yum install MariaDB-server MariaDB-client galera-4 MariaDB-shared MariaDB-backup MariaDB-common
  sudo dnf install MariaDB-server MariaDB-client galera-4 MariaDB-shared MariaDB-backup MariaDB-common
<br>
<br>
正常にインストールされているか確認する。<br>
正常にインストールされているか確認する。<br>
  mariadb –version
  mariadb --version
<br>
<br>
===== パッケージ管理システムからインストール(非推奨) =====
===== パッケージ管理システムからインストール(非推奨) =====
MariaDBをインストールするため、以下のコマンドを実行する。<br>
MariaDBをインストールするため、以下のコマンドを実行する。<br>
  sudo yum install mariadb-server
  sudo dnf install mariadb-server
<br>
<br>
正常にインストールされているか確認する。<br>
正常にインストールされているか確認する。<br>
42行目: 43行目:
<br>
<br>
==== SUSE ====
==== SUSE ====
===== リポジトリを追加してインストール(推奨) =====
===== リポジトリを追加してインストール (推奨) =====
次のコマンドを実行して、MariaDBのリポジトリを追加する。<br>
次のコマンドを実行して、MariaDBのリポジトリを追加する。<br>
# SLEの場合
sudo zypper addrepo --gpgcheck --refresh https://yum.mariadb.org/<MariaDBのバージョン>/sles/<SLEのバージョン>/x86_64/ MariaDB
  # openSUSEの場合
  # openSUSEの場合
  sudo zypper addrepo --gpgcheck --refresh https://yum.mariadb.org/10.5.2/opensuse/15/x86_64/ mariadb
  sudo zypper addrepo --gpgcheck --refresh https://yum.mariadb.org/<MariaDBのバージョン>/opensuse/<openSUSEのバージョン>/x86_64/ MariaDB
# SLEの場合
sudo zypper addrepo --gpgcheck --refresh https://yum.mariadb.org/10.5.2/sles/15/x86_64/ mariadb
<br>
<br>
次に、リポジトリのGPGキーを取得する。<br>
次に、リポジトリのGPGキーを取得する。<br>
58行目: 59行目:
  sudo zypper install MariaDB-server MariaDB-client galera-4 MariaDB-shared MariaDB-backup MariaDB-common
  sudo zypper install MariaDB-server MariaDB-client galera-4 MariaDB-shared MariaDB-backup MariaDB-common
<br>
<br>
===== パッケージ管理システムからインストール =====
MariaDBをインストールするため、以下のコマンドを実行する。<br>
sudo zypper install mariadb mariadb-tools
<br>
正常にインストールされているか確認する。<br>
mariadb --version
<br>
==== Raspberry Pi ====
MariaDBには、Raspberry Pi向けのリポジトリは存在しないため、パッケージ管理システムからインストールする。<br>
sudo apt install mariadb-server mariadb-client
<br>
正常にインストールされているか確認する。<br>
mariadb --version
<br>
==== ソースコードからインストール ====
==== ソースコードからインストール ====
MariaDBのビルドに必要なライブラリをダウンロードする。<br>
MariaDBのビルドに必要なライブラリをダウンロードする。<br>
  sudo zypper install gcc gcc-c++ make cmake bison ncurses-devel libboost_system1_66_0 libboost_thread1_66_0 libboost_headers1_66_0-devel \
  sudo zypper install gcc gcc-c++ make cmake bison ncurses-devel \
                     libcurl-devel zlib-devel readline-devel pcre-devel pcre2-devel libopenssl-devel libopenssl-1_1-devel libevent-devel \
                     libcurl-devel zlib-devel readline-devel pcre-devel pcre2-devel libopenssl-devel libopenssl-1_1-devel libevent-devel \
                     liblz4-devel lzo-devel lzlib-devel lzma-sdk-devel libxml2-devel snappy-devel libpmem-devel judy-devel libnotify-devel \
                     liblz4-devel lzo-devel lzlib-devel lzma-sdk-devel libxml2-devel snappy-devel libpmem-devel judy-devel libnotify-devel \
                     fmt-devel unixODBC-devel libnuma-devel tcpd-devel systemd-devel libzstd-devel gssntlmssp-devel libgssglue-devel \
                     fmt-devel unixODBC-devel libnuma-devel tcpd-devel systemd-devel libzstd-devel gssntlmssp-devel libgssglue-devel \
                     libboost_system1_66_0-devel libboost_filesystem1_66_0-devel libboost_thread1_66_0-devel \
                     libboost_system1_66_0 libboost_thread1_66_0 libboost_headers1_66_0-devel libboost_system1_66_0-devel \
                    libboost_regex1_66_0-devel libboost_date_time1_66_0-devel libboost_atomic1_66_0-devel \
                    libboost_filesystem1_66_0-devel libboost_thread1_66_0-devel libboost_regex1_66_0-devel libboost_date_time1_66_0-devel \
                    libboost_chrono1_66_0-devel
                    libboost_atomic1_66_0-devel libboost_chrono1_66_0-devel
<br>
<br>
[http://downloads.mariadb.org/ MariaDBの公式Webサイト]にアクセスして、ソースコードをダウンロードする。<br>
[http://downloads.mariadb.org/ MariaDBの公式Webサイト]にアクセスして、ソースコードをダウンロードする。<br>
または、[https://github.com/MariaDB/server/tags MariaDBのGithub]からソースコードをダウンロードする。<br>
<br>
ダウンロードしたファイルを解凍する。<br>
ダウンロードしたファイルを解凍する。<br>
  tar xf mariadb-<バージョン>
  tar xf mariadb-<バージョン>
  cd mariadb-<バージョン>
  cd mariadb-<バージョン>
<br>
または、[https://github.com/MariaDB/server/tags MariaDBのGithub]からソースコードをダウンロードする。<br>
git clone --depth 1 https://github.com/MariaDB/server.git mariadb
# または
git clone --depth 1 https://github.com/MariaDB/server.git -b <ブランチ名  例: 11.4> mariadb
cd mariadb
git submodule update --init --recursive
<br>
<br>
ビルドディレクトリを作成する。<br>
ビルドディレクトリを作成する。<br>
79行目: 101行目:
<br>
<br>
MariaDBをビルドおよびインストールする。<br>
MariaDBをビルドおよびインストールする。<br>
export INSTALLDIR=<MySQLのインストールディレクトリ>
  cmake .. \
  cmake .. \
       -DCMAKE_INSTALL_PREFIX=<MySQLのインストールディレクトリ> \
       -DCMAKE_INSTALL_PREFIX=$INSTALLDIR \
       -DCMAKE_BUILD_TYPE=Release \
       -DCMAKE_BUILD_TYPE=Release \
       -DDEFAULT_CHARSET=utf8mb4 \ # デフォルトの文字セット(デフォルト : latin1)
       -DDEFAULT_CHARSET=utf8mb4 \               # デフォルトの文字セット(デフォルト : latin1)
       -DDEFAULT_COLLATION=utf8mb4_general_ci \  # デフォルトの照合順序(デフォルト : latin1_swedish_ci)
       -DDEFAULT_COLLATION=utf8mb4_general_ci \  # デフォルトの照合順序(デフォルト : latin1_swedish_ci)
       -DWITH_EXTRA_CHARSETS=all \ # 追加の文字セット(デフォルト : all)
       -DWITH_EXTRA_CHARSETS=all \               # 追加の文字セット(デフォルト : all)
       -DDEFAULT_SYSCONFDIR=<MySQLのインストールディレクトリ> \ # my.cnfファイルの場所
       -DDEFAULT_SYSCONFDIR=$INSTALLDIR \       # my.cnfファイルの場所
       -DDEFAULT_BASEDIR=<MySQLのインストールディレクトリ> \
       -DDEFAULT_BASEDIR=$INSTALLDIR \
       -DMYSQL_DATADIR=<MySQLのインストールディレクトリ>/data \
       -DMYSQL_DATADIR=$INSTALLDIR/data \
       -DMYSQL_UNIX_ADDR=/<MySQLのインストールディレクトリ>/tmp/mysql.sock \ # ソケットファイルのパス (デフォルト : /tmp/mysql.sock)
       -DMYSQL_UNIX_ADDR=$INSTALLDIR/tmp/mysql.sock \     # ソケットファイルのパス (デフォルト : /tmp/mysql.sock)
       -DWITH_SYSTEMD=yes \ # Systemdサービスを使用する場合
       -DWITH_SYSTEMD=yes \                               # Systemdサービスを使用する場合
       -DWITH_INNOBASE_STORAGE_ENGINE=1 \ # InnoDBストレージエンジンを有効にする
       -DWITH_INNOBASE_STORAGE_ENGINE=1 \                 # InnoDBストレージエンジンを有効にする
       -DENABLED_LOCAL_INFILE=1 \ # LOAD DATA INFILEを有効にする(デフォルト : 無効)
       -DENABLED_LOCAL_INFILE=1 \                         # LOAD DATA INFILEを有効にする(デフォルト : 無効)
       -DWITH_BOOST=/<Boostのインストールディレクトリ>/include \  # 手動でBoostをインストールしている場合は指定する
       -DWITH_BOOST=/<Boostのインストールディレクトリ>/include \  # 手動でBoostをインストールしている場合は指定する
       -DCMAKE_C_COMPILER=<gcc実行ファイルのパス> \   # 任意のgcc実行ファイルを指定する場合
       -DCMAKE_C_COMPILER=<gcc実行ファイルのパス> \           # 任意のgcc実行ファイルを指定する場合
       -DCMAKE_CXX_COMPILER=<g++実行ファイルのパス> \ # 任意のg++実行ファイルを指定する場合
       -DCMAKE_CXX_COMPILER=<g++実行ファイルのパス> \         # 任意のg++実行ファイルを指定する場合
       -DWITH_VALGRIND=ON   # Valgrindを使用する場合 (Valgrindとは、LinuxにおけるC++のメモリリーク等の検知ツールのことである)
       -DWITH_VALGRIND=ON                                 # Valgrindを使用する場合 (Valgrindとは、LinuxにおけるC++のメモリリーク等の検知ツールのことである)
   
   
  make -j $(nproc)
  make -j $(nproc)
101行目: 125行目:
   
   
  # または
  # または
export INSTALLDIR=<MySQLのインストールディレクトリ>
   
   
  cmake .. -G Ninja \
  cmake .. -G Ninja \
       -DCMAKE_INSTALL_PREFIX=<MySQLのインストールディレクトリ> \
       -DCMAKE_INSTALL_PREFIX=$INSTALLDIR \
       -DCMAKE_BUILD_TYPE=Release \
       -DCMAKE_BUILD_TYPE=Release \
       -DDEFAULT_CHARSET=utf8mb4 \ # デフォルトの文字セット(デフォルト�: latin1)
       -DDEFAULT_CHARSET=utf8mb4 \               # デフォルトの文字セット(デフォルト : latin1)
       -DDEFAULT_COLLATION=utf8mb4_general_ci \  # デフォルトの照合順序(デフォルト�: latin1_swedish_ci)
       -DDEFAULT_COLLATION=utf8mb4_general_ci \  # デフォルトの照合順序(デフォルト : latin1_swedish_ci)
       -DWITH_EXTRA_CHARSETS=all \ # 追加の文字セット(デフォルト�: all)
       -DWITH_EXTRA_CHARSETS=all \               # 追加の文字セット(デフォルト : all)
       -DDEFAULT_SYSCONFDIR=<MySQLのインストールディレクトリ> \ # my.cnfファイルの場所
       -DDEFAULT_SYSCONFDIR=$INSTALLDIR \       # my.cnfファイルの場所
       -DDEFAULT_BASEDIR=<MySQLのインストールディレクトリ> \
       -DDEFAULT_BASEDIR=$INSTALLDIR \
       -DMYSQL_DATADIR=<MySQLのインストールディレクトリ>/data \
       -DMYSQL_DATADIR=$INSTALLDIR/data \
       -DMYSQL_UNIX_ADDR=/<MySQLのインストールディレクトリ>/tmp/mysql.sock \ # ソケットファイルのパス (デフォルト�: /tmp/mysql.sock)
       -DMYSQL_UNIX_ADDR=$INSTALLDIR/tmp/mysql.sock \     # ソケットファイルのパス (デフォルト : /tmp/mysql.sock)
       -DWITH_SYSTEMD=yes \ # Systemdサービスを使用する場合
       -DWITH_SYSTEMD=yes \                               # Systemdサービスを使用する場合
       -DWITH_INNOBASE_STORAGE_ENGINE=1 \ # InnoDBストレージエンジンを有効にする
       -DWITH_INNOBASE_STORAGE_ENGINE=1 \                 # InnoDBストレージエンジンを有効にする
       -DENABLED_LOCAL_INFILE=1 \ # LOAD DATA INFILEを有効にする(デフォルト�: 無効)
       -DENABLED_LOCAL_INFILE=1 \                         # LOAD DATA INFILEを有効にする(デフォルト : 無効)
       -DWITH_BOOST=/<Boostのインストールディレクトリ>/include \  # 手動でBoostをインストールしている場合は指定する
       -DWITH_BOOST=/<Boostのインストールディレクトリ>/include \  # 手動でBoostをインストールしている場合は指定する
       -DCMAKE_C_COMPILER=<gcc実行ファイルのパス> \   # 任意のgcc実行ファイルを指定する場合
       -DCMAKE_C_COMPILER=<gcc実行ファイルのパス> \           # 任意のgcc実行ファイルを指定する場合
       -DCMAKE_CXX_COMPILER=<g++実行ファイルのパス> \ # 任意のg++実行ファイルを指定する場合
       -DCMAKE_CXX_COMPILER=<g++実行ファイルのパス> \         # 任意のg++実行ファイルを指定する場合
       -DWITH_VALGRIND=ON   # Valgrindを使用する場合 (Valgrindとは、LinuxにおけるC++のメモリリーク等の検知ツールのことである)
       -DWITH_VALGRIND=ON                                 # Valgrindを使用する場合 (Valgrindとは、LinuxにおけるC++のメモリリーク等の検知ツールのことである)
   
   
  ninja -C .
  ninja -C .
155行目: 181行目:
<br>
<br>
MariaDBの初期DBファイルを作成する。<br>
MariaDBの初期DBファイルを作成する。<br>
  /<MariaDBのインストールディレクトリ>/scripts/mysql_install_db --user=<my.cnfファイルのuserキーの値(ユーザ名)  例. mysql>   
  sudo /<MariaDBのインストールディレクトリ>/scripts/mysql_install_db --user=<my.cnfファイルのuserキーの値(ユーザ名)  例. mysql>   
<br>
<br>
MariaDBを起動する。<br>
MariaDBを起動する。<br>
192行目: 218行目:
   
   
  # 管理者ユーザを作成する
  # 管理者ユーザを作成する
  CREATE USER '<ユーザ名>'@'<ホスト名>' IDENTIFIED BY '<パスワード>';
  CREATE USER '<ユーザ名>'@'%' IDENTIFIED BY '<パスワード>';
   
   
  # 管理者ユーザに権限を付与する
  # 管理者ユーザに権限を付与する
  GRANT CREATE ON *.* TO '<ユーザ名>'@'%';
  GRANT CREATE ON *.* TO '<ユーザ名>'@'%';
   
   
  # もし、ここでrootユーザのパスワードを再変更する場合
  # もし、rootユーザのパスワードを再変更する場合
  ALTER USER 'root'@'localhost' IDENTIFIED BY '<パスワード>';
  ALTER USER 'root'@'localhost' IDENTIFIED BY '<パスワード>';
   
   
218行目: 244行目:
  sudo systemctl start mariadb.service
  sudo systemctl start mariadb.service
<br>
<br>
==== パッケージ管理システムからインストール(非推奨) ====
MariaDBをインストールするため、以下のコマンドを実行する。<br>
sudo zypper install mariadb mariadb-tools
<br>
正常にインストールされているか確認する。<br>
mariadb --version
<br><br>


== my.cnfファイルのテンプレート ==
== my.cnfファイルのテンプレート ==
442行目: 460行目:
<br>
<br>
suseユーザの登録が成功したか確認する。<br>
suseユーザの登録が成功したか確認する。<br>
  select user from mysql.user where user='centos';
  select user from mysql.user where user='suse';
<br>
<br>
suseユーザの登録をMariaDBサーバへ反映する。<br>
suseユーザの登録をMariaDBサーバへ反映する。<br>
519行目: 537行目:


__FORCETOC__
__FORCETOC__
[[カテゴリ:CentOS]][[カテゴリ:SUSE]]
[[カテゴリ:RHEL]][[カテゴリ:SUSE]]