Ubuntu22.04にMariaDBをインストールしたいと思います。
パッケージの更新
まず最初にaptを使用したパッケージインデックスを更新します。
sudo apt update
sudo apt upgrade
MariaDBをインストールする
そし下記コマンドで、MariaDBをインストールします。
sudo apt install -y mariadb-server
MariaDBの初期設定
mysql_secure_installation
mysql_secure_installation
セキュリティスクリプトを実行して、サーバーへのアクセスを制限する
sudo mysql_secure_installation
rootパスワードは空白
rootパスワードを尋ねられますが、そのままEnterします。
新規rootパスワード設定
set root password
でパスワードを設定するか尋ねられますが、 n
してEnter
以降は全てy
以降は、全て y
と入力してEnterします。
管理ユーザーの作成
MariaDBを起動
sudo mariadb
新規ユーザーの作成
root権限とパスワードベースのアクセスを持つ新しいユーザーを作成します。
GRANT ALL ON *.* TO '<ユーザー名>'@'%' IDENTIFIED BY '<パスワード>' WITH GRANT OPTION;
下記は、ユーザー名 hide パスワードを passwordとした場合の作成例です。
GRANT ALL ON *.* TO 'hide'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
権限のフラッシュ
現在のセッションで保存されており利用できることを確認するために、権限をフラッシュします。
FLUSH PRIVILEGES;
MariaDBの終了
この後、MariaDBシェルを終了します。
exit;
MariaDBのテスト
ステータスの確認
デフォルトリポジトリからインストールされた場合、MariaDBは自動的に実行を開始します。これをテストするには、ステータスを確認してください。
sudo systemctl status mariadb
activeを確認
active
と表示されていたらOKです。
ステータスの終了
Ctrl+c
で 終了できます。
追加のチェックとして、管理コマンドを実行できるクライアントである mysqladmin ツールを使用してデータベースへの接続を試すことができます。 例えば、このコマンドは、Unixソケットを使用してrootとしてMariaDBに接続し、バージョンを返します。
バージョン確認
下記コマンドでMariaDBとmysqladminのバージョンが確認できます。
sudo mysqladmin version
下記の様に表示されました。
別のユーザーで確認
パスワード認証で別の管理ユーザーを設定した場合は、次のように入力することで同じ操作を実行できます。hide は個人ユーザー名です。
mysqladmin -u hide -p version
Mariadbへ接続
次のいづれかのコマンドで接続可能です。(rootユーザ、パスワード無しの場合)
sudo mariadb -u root -p
sudo mariadb
sudo mysql -u root -p
sudo mysql
sudo mariadb -u hide -p
ユーザーの追加
ユーザーの確認
下記コマンドでユーザーを確認します。
select user,host from mysql.user;
MariaDB [(none)]> select user,host from mysql.user;
+------+-----------+
| user | host |
+------+-----------+
| hide | localhost |
| root | localhost |
+------+-----------+
2 rows in set (0.002 sec)
ユーザーの追加
CREATE USER '<ユーザー>'@<ホスト> IDENTIFIED BY '<パスワード>';
ユーザの権限変更
GRANT ALL PRIVILEGES ON <データベース>.<テーブル> TO '<ユーザー>'@<ホスト>;
FLUSH PRIVILEGES;
phpmyadminデータベースの確認
phpmyadminという名前のデータベースがあるかどうかを確認します。
SHOW DATABASES;
無ければ、下記でデータベースを作成します。
CREATE DATABASE phpmyadmin;
phpmyadminという名前の新しいユーザーを作成し、そのユーザーにphpmyadminデータベースへのフルアクセス権限を付与します。
CREATE USER 'phpmyadmin'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON phpmyadmin.* TO 'phpmyadmin'@'localhost';
FLUSH PRIVILEGES;
次に、phpmyadminデータベースに必要なテーブルを作成します。これには、phpMyAdminのインストールディレクトリ内のcreate_tables.sqlという名前のSQLスクリプトを使用します。通常、このスクリプトは /usr/share/phpmyadmin/sql/create_tables.sql にありますが、インストール方法により異なる場合があります。このスクリプトをMySQL/MariaDBにインポートするには、次のコマンドを実行します:
mysql -u hide -p phpmyadmin < /usr/share/phpmyadmin/sql/create_tables.sql;
最後に、phpMyAdminの設定ファイルconfig.inc.phpを編集して、新しく作成したデータベースとユーザーの詳細を反映させます。
$cfg['Servers'][$i]['controluser'] = 'phpmyadmin';
$cfg['Servers'][$i]['controlpass'] = 'password';
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
コメント