「UbuntuとRocky Linuxで手順が違うのは知っているが、具体的にどう叩けばいいか整理できていない」
MariaDBのインストール方法は大きく2つあります。ディストリビューション標準のパッケージマネージャー(apt / dnf)を使う方法と、MariaDB公式が配布するtarballを展開して手動で構成する方法です。どちらでも「動く」ことは変わりませんが、バージョン管理のしやすさ・アップデート経路・OS標準パッケージとの競合リスクが異なります。
この記事では、Ubuntu 24.04 LTS と Rocky Linux 9.4 を実行環境として、mariadb installの2つの経路を実機で検証した手順を解説します。「どちらを選ぶか」の判断基準から、インストール後の初期セキュア設定・起動確認まで一気通貫で押さえられます。
この記事のポイント
・apt/dnfは手軽で自動更新が効く。tarballはバージョン固定・柔軟性が強み
・Ubuntuは公式MariaDBリポジトリを追加してaptでインストールするのが標準
・Rocky Linux(RHEL系)はAppStream版を無効にしてから公式リポジトリのdnfを使う
・tarball展開後はmysqlユーザー作成とsystemdユニットファイルの登録が必要
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
aptとtarball、どちらでmariadb installすべきか
MariaDBのインストール方法を選ぶ前に、2つの方式の特徴を整理しておきます。| 方式 | メリット | デメリット | 向いているケース |
|---|---|---|---|
| apt / dnf | 手順が短い・セキュリティアップデートが自動適用される | リポジトリに収録されているバージョンに縛られる | 開発環境・テスト環境・最新バージョンで十分な本番 |
| tarball(手動展開) | バージョンを完全に固定できる・複数バージョンを共存させられる | systemdの設定が必要・アップデートは手動対応 | バージョン固定が必須の本番・ステージング環境 |
aptでmariadb installを実施する(Ubuntu / Rocky Linux対応)
1. MariaDB公式リポジトリを登録する
MariaDB Foundation が提供するセットアップスクリプトを使うと、apt/dnfに公式リポジトリを一発で追加できます。# MariaDB 11.4 LTSのリポジトリを追加(Ubuntu / Rocky Linux 共通) curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version="mariadb-11.4"
apt update または dnf makecache を実行してキャッシュを更新してください。2. Ubuntu 24.04 LTSへのaptインストール
リポジトリを追加した後は通常のaptコマンドで完了します。sudo apt update sudo apt install -y mariadb-server
Reading package lists... Done Building dependency tree... Done The following NEW packages will be installed: galera-4 libdbd-mysql-perl libmariadb3 mariadb-client mariadb-client-core mariadb-server mariadb-server-core 0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded. ... Setting up mariadb-server (1:11.4.4+maria~ubu2404) ... Created symlink /etc/systemd/system/mysql.service -> /lib/systemd/system/mariadb.service.
[db01@ubuntu24 ~]$ sudo systemctl status mariadb * mariadb.service - MariaDB 11.4.4 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; preset: enabled) Active: active (running) since Thu 2026-10-09 10:12:44 JST; 23s ago Docs: man:mariadbd(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 28341 (mariadbd) Status: "Taking your SQL requests now..."
Active: active (running) と Status: "Taking your SQL requests now..." の2行が確認できれば起動成功です。3. Rocky Linux 9.4(RHEL系)へのdnfインストール
Rocky Linux 9 の AppStream には MariaDB 10.5 が収録されています。公式リポジトリの 11.4 LTS を導入する場合は、AppStream モジュールとの競合を先に解消します。# AppStream 版のモジュールを無効化してから公式リポジトリ版を導入する sudo dnf module disable mariadb -y sudo dnf install -y MariaDB-server MariaDB-client
[root@db02 ~]# sudo dnf install -y MariaDB-server MariaDB-client MariaDB Server 4.2 MB/s | 31 MB 00:07 Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: MariaDB-client x86_64 11.4.4-1.el9 mariadb-main 14 M MariaDB-server x86_64 11.4.4-1.el9 mariadb-main 28 M ... Installed: MariaDB-client-11.4.4-1.el9.x86_64 MariaDB-server-11.4.4-1.el9.x86_64 Complete!
# サービス起動と自動起動設定(Rocky Linux はデフォルトで preset: disabled) sudo systemctl start mariadb sudo systemctl enable mariadb sudo systemctl status mariadb
* mariadb.service - MariaDB 11.4.4 database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; preset: disabled) Active: active (running) since Thu 2026-10-09 10:31:18 JST; 5s ago Main PID: 14921 (mariadbd) Status: "Taking your SQL requests now..."
/var/lib/mysql から変更する場合は、semanage fcontext でコンテキストラベルの再設定も必要です。tarballでmariadb installを実施する
パッケージリポジトリの追加が禁止されている環境や、本番で使うバージョンを完全に固定したい場合はtarball展開を選択します。apt/dnfより手順は多いですが、一度仕組みを理解すれば難しくはありません。1. tarballの取得と展開
MariaDB Foundation の公式ダウンロードサイトから Linux 用バイナリtarball(.tar.gz または .tar.xz)を取得します。# /usr/local 配下に展開してシンボリックリンクを貼る cd /usr/local sudo tar -xzf /tmp/mariadb-11.4.4-linux-systemd-x86_64.tar.gz sudo ln -s mariadb-11.4.4-linux-systemd-x86_64 mysql
tar コマンドのオプション(-x 展開・-z gzip・-f ファイル指定)の詳細はtar コマンドの実用例も参照してください。次に
mysql ユーザーを作成し、データディレクトリを準備します。sudo groupadd mysql sudo useradd -r -g mysql -s /bin/false mysql sudo mkdir -p /var/lib/mysql /var/log/mysql /run/mysqld sudo chown -R mysql:mysql /var/lib/mysql /var/log/mysql /run/mysqld /usr/local/mysql
sudo /usr/local/mysql/scripts/mariadb-install-db --user=mysql --datadir=/var/lib/mysql --basedir=/usr/local/mysql
2. systemdサービスの登録と起動
tarball にはサンプルの systemd ユニットファイルが同梱されています。これをコピーして登録します。sudo cp /usr/local/mysql/support-files/systemd/mariadb.service /etc/systemd/system/mariadb.service sudo systemctl daemon-reload sudo systemctl start mariadb sudo systemctl enable mariadb
[root@db03 ~]# sudo systemctl status mariadb * mariadb.service - MariaDB Database Server Loaded: loaded (/etc/systemd/system/mariadb.service; enabled; preset: disabled) Active: active (running) since Thu 2026-10-09 11:05:22 JST; 8s ago Main PID: 22147 (mariadbd) Status: "Taking your SQL requests now..."
インストール後の共通手順(mariadb-secure-installationの実行)
apt/dnf・tarball のどちらで導入した場合でも、初期セキュア設定は必ず実施します。MariaDB 11.4 ではmariadb-secure-installation が推奨コマンドです(従来の mysql_secure_installation も使用できます)。sudo mariadb-secure-installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! Enter current password for root (enter for none): [Enter] Switch to unix_socket authentication [Y/n] n Change the root password? [Y/n] y New password: Re-enter new password: Password updated successfully! Remove anonymous users? [Y/n] y ... Success! Disallow root login remotely? [Y/n] y ... Success! Remove test database and access to it? [Y/n] y ... Success! Reload privilege tables now? [Y/n] y ... Success!
[db01@ubuntu24 ~]$ sudo mariadb -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 12 Server version: 11.4.4-MariaDB MariaDB Server MariaDB [(none)]> SELECT VERSION(); +--------------------+ | VERSION() | +--------------------+ | 11.4.4-MariaDB | +--------------------+ 1 row in set (0.001 sec)
SELECT VERSION() でインストールしたバージョンが返れば、セットアップは完了です。インストール時のよくあるエラーと対処法
「ERROR 1698 (28000): Access denied for user 'root'@'localhost'」が出るUbuntu 22.04 以降はrootがunix_socketによる認証になっています。
sudo mariadb または sudo mariadb -u root でログインしてください。パスワード認証が必要な場合は、ログイン後に ALTER USER 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('パスワード'); でプラグインを変更します。「Can't connect to local MySQL server through socket '/run/mysqld/mysqld.sock'」が出る
サービスが起動していないか、ソケットファイルのパスが
/etc/mysql/my.cnf の設定と一致していません。まず sudo systemctl status mariadb でサービス状態を確認し、failed であれば sudo journalctl -u mariadb -n 50 でエラーログを確認してください。Rocky Linux で「conflicting packages」または「nothing to do」が出る
AppStream に収録されている MariaDB 10.5 系と公式リポジトリの 11.4 系が競合しています。
sudo dnf module disable mariadb -y で AppStream 版を無効化してから再度インストールを実行してください。tarball インストールで「mariadb-install-db: No such file」が出る
バージョンによっては
scripts/ ではなく bin/ 配下に配置されている場合があります。find /usr/local/mysql -name 'mariadb-install-db' でパスを確認してください。本記事のまとめ
Linuxサーバーへの mariadb install は、apt/dnf(パッケージ管理)とtarball(手動展開)を状況に応じて使い分けることが重要です。| やりたいこと | コマンド / 手順 |
|---|---|
| MariaDB公式リポジトリを追加(共通) | curl -LsS .../mariadb_repo_setup | bash -s -- --mariadb-server-version="mariadb-11.4" |
| Ubuntuへaptインストール | sudo apt install -y mariadb-server |
| Rocky LinuxのAppStreamモジュール無効化 | sudo dnf module disable mariadb -y |
| Rocky Linux(RHEL系)へdnfインストール | sudo dnf install -y MariaDB-server MariaDB-client |
| tarball展開後の初期DB作成 | /usr/local/mysql/scripts/mariadb-install-db --user=mysql --datadir=/var/lib/mysql |
| 初期セキュア設定 | sudo mariadb-secure-installation |
>> Linux Master Pro Seminar の詳細を見る
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
姓・名・メールの3つだけ/30秒/解除は3秒 / 詳細はこちら
- 前のページへ:MariaDBユーザー作成時のHOST指定とパスワード設定|mysql CLIで安全に構成する
- この記事の属するカテゴリ:データーベース管理へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は30秒、解除もいつでも可。
登録無料・いつでも解除できます