[Linux]MariaDB のインストール
公開日:2025-11-30
更新日:2025-11-30
更新日:2025-11-30
1. 概要
MySQL から派生された MariaDB をインストールします。
2. MariaDB のインストール
コマンド
sudo dnf install mariadb-server mariadb
MariaDB の起動
コマンド
sudo systemctl start mariadb3. MariaDB の初期設定
コマンド
sudo mysql_secure_installation
コマンドを実行すると、いろいろ聞かれるので次のように入力する。
コマンド
# 現在のパスワードの入力
Enter current password for root (enter for none): # 何も入力せずにエンター
# root ユーザのパスワードを変更するか?
Change the root password? [Y/n] y
New password: # 新しいパスワードを入れる
Re-enter new password: # 新しいパスワードを入れる
# anonymous users を削除するか?
Remove anonymous users? [Y/n] y
# root でリモートログインを拒否するか?
Disallow root login remotely? [Y/n] y # y:拒否する
# testデータベースを削除するか?
Remove test database and access to it? [Y/n] y
# privilege テーブル(ユーザーの権限)をリロードするか?
Reload privilege tables now? [Y/n] y4. MariaDB に接続
コマンド
mysql -u root -p # root ユーザのパスワードを入力する5. PHP から MariaDB にアクセスする
5.1 テスト用データベースの作成
コマンド
# DB の作成
CREATE DATABASE test DEFAULT CHARACTER SET utf8mb4;
use test;
# テーブルの作成
CREATE TABLE table1 (
id INT NOT NULL AUTO_INCREMENT,
text TEXT NOT NULL,
PRIMARY KEY (id)
) ENGINE = InnoDB;
# データの作成
INSERT INTO table1 (text) values ('test1'), ('test2'), ('test3');5.2 DB にアクセスする PHP の作成
/usr/share/nginx/html/test_db.php
http://127.0.0.1:8080/test_db.php にアクセスして、次のように表示されれば OK です。
コード
<?php
$pdo = new PDO('mysql:host=localhost;dbname=test;charset=utf8mb4',
'root', // user
'root', // password
[
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// プリペアドステートメントをエミュレートしない
PDO::ATTR_EMULATE_PREPARES => false,
]
);
$stmt = $pdo->query('SELECT * FROM table1');
while ($row = $stmt->fetch()) {
var_dump($row['id']);
var_dump($row['text']);
}
http://127.0.0.1:8080/test_db.php にアクセスして、次のように表示されれば OK です。
コマンド
int(1) string(5) "test1" int(2) string(5) "test2" int(3) string(5) "test3"
