e1MariaDB install

MariaDBはWordPressで使うデーターベースです。なのでWordPressを利用しない方はパスして下さい。

MariaDBは、主要なLinuxディストリビューションで採用されているデータベースです。少しご存じの方であれば、Linuxに採用されているデータベースと言えばMySQLやPostgreSQLを思い浮かべるかもしれませんね。MariaDBは、MySQLから派生したもので、MySQLと共通点の多いデータベースです。そして、MariaDBは、現在最も勢いのあるデータベースの一つであると言えます。

//Winserverのススメ

■ RaspiOS アップデート

セクションb4による

■ MariaDBインストール

#MariaDBのインストール
$ sudo apt install mariadb-client mariadb-server
#MariaDBの起動
$ sudo systemctl start mariadb 
#自動起動設定も有効にする
$ sudo systemctl enable mariadb 
$ mysql --version #バージョン情報(クライアント)
//output
mysql  Ver 15.1 Distrib 10.5.18-MariaDB, for debian-linux-gnu (aarch64) using  EditLine wrapper
$ sudo service mysql status  #サービスの起動確認

■ MariaDB セキュリティの初期設定

これから開く設定画面は英語版のページとなります。
下記のLink先に日本語翻訳と共に設定全容が有ります
mysql_secure_installation//MariaDB
又 次のサイトで上記と少し違う返答を参考にして"返答の抜粋"を提示してます。
Raspberry PiへのMariaDB セットアップ 2022年版//Qiita

$ sudo mysql_secure_installation #初期設定
passwordについては、one point でコメントしています。
# 返答の抜粋
Enter current password for root (enter for none): → Enter
 //root の現在のパスワードを入力してください (Enter)
Switch to unix_socket authentication [Y/n] → n
 //unix_socket 認証に切り替えますか?
Change the root password? [Y/n] →  y
 //root パスワードを変更しますか?
New password:  ****      <--MariaDBのrootユーザー用パスワードを新規作成
 //新しいパスワード
Re-enter new password: ****   
 //同じパスワード
Remove anonymous users? [Y/n]  → y
 //匿名ユーザを削除しますか?
Disallow root login remotely? [Y/n]  → y
 //リモートからの root ログインを禁止しますか?
Remove test database and access to it? [Y/n]  → y
 //test データベースとそのデータベースへのアクセスを削除しますか?
Reload privilege tables now? [Y/n]  → y
 //今すぐ権限テーブルを再読み込みしますか?
Thanks for using MariaDB!
 //MariaDB のご利用ありがとうございます!    
次に設定ファイル上でローカルからのアクセスに限定する行をコメントアウトします。
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
#次の通りコメントアウトします
30:#binde-address     =127.0.0.1

#起動確認

mysql -u root -p
Enter password:**** #セキュリティの初期設定の取り決め
//output
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 11
Server version: 10.5.18-MariaDB-0+deb11u1 Debian 11
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)]>
↑このような画面になればOK
MariaDB [(none)]>quit(or exit)
Bye
↑DB終了

ログインエラー「Access denied for user 'root'@'localhost'」が出たら、最後の one point を試して下さい。

■ MariaDB 初期設定

設定ファイルを使った文字コードの設定方法
文字コードに関する設定を記述する//JavaDrive

 $ sudo nano /etc/mysql/conf.d/mysql.cnf
#新規に作成
[mysql]
default-character-set=utf8
[mysqld]
default_password_lifetime=0 
character-set-server=utf8 
[mysqldump]
default-character-set=utf8
nano上書き:Ctrl+O(アルファベト)保存 → Enter → Ctrl+x(アルファベット)終了
$ sudo service mysql restart #MariaDBの再起動
文字コードの設定確認
$ mysql -u root -p
pasword:****  #セキュリティの初期設定の取り決め
MariaDB [(none)]> show variables like "chara%";
//output
+-----------------------------+-------------------------------+
| Variable_name                 | Value                                |
+-----------------------------+-------------------------------+
| character_set_client         | utf8                                   |
| character_set_connection | utf8                                   |
| character_set_database    | utf8mb4                            |
| character_set_filesystem  | binary                                |
| character_set_results       | utf8                                   |
| character_set_server       | utf8mb4                             |
| character_set_system      | utf8                                   |
| character_sets_dir           | /usr/share/mysql/charsets/ |
+----------------------------+--------------------------------+
MariaDB [(none)]> quit

# 権限変更、バージョン確認

$ mysql -u root -p  #MySQLにログイン
password:****  #セキュリティの初期設定の取り決め
# 権限変更    
MariaDB[(none)]> grant all privileges on *.* to root@"%" identified by 'your password' with grant option;    
#バージョン情報(サーバー)
MariaDB [(none)]> select version();
//output
+---------------------------------+
| version()                               |
+---------------------------------+
| 10.5.18-MariaDB-0+deb11u1 |
+---------------------------------+
MariaDB [(none)]> quit #サービス終了
$ sudo service mysql restart #サービスの再起動

■ MariaDB アンインストールの場合

$ sudo apt purge mariadb-server
$ sudo apt autoremove
$ sudo apt clean

■ mysql アンインストールの場合

これが必要かどうか、解かりません

$ sudo apt-get remove --purge mysql-server* mysql-common
$ sudo apt-get autoremove --purge
$ sudo rm -r /etc/mysql
$ sudo rm -r /var/lib/mysql    

one point --*-- passwordとerrer

passwordですが、他にも決める場面が出て増えることから自分はOSインストール時のパスワードにしています。それがいい事ではないとは思いますが、記憶しやすいと言う事でそうしています。
又 エラーで「Access denied for user 'root'@'localhost'」に出くわす事が有ります。
$ sudo mysql
MariaDB[(none)]>ALTER USER 'root'@'localhost' IDENTIFIED BY 'パスワード';
で対処してます。