XAMPPのコントロールパネル画面で、Apache と MySQLを両方とも「Start」起動したあとに、MySQL関連項目の「Admin」を押すことで、 phpmyadmin というアプリを起動できる。
この  phpmyadmin というアプリが、webブラウザを使ってMySQLを編集するツールである。（PHP作成ツールではない。）名前にPHPとついている理由は単に、このツールがPHPで作成されているからという理由にすぎない。
という機能もあるのだが、これを使わずとも MySQL を起動できる。( phpmyadmin は画面の表示項目がとても多く、初心者には、けっこう難しい。むしろ中級～上級者向け。)
Windowsの場合、コマンドプロンプトで
 t>cd c:\xampp\mysql\bin
の入力後、
 l\bin>mysql -u root
である。
もしくは環境変数で、
 C:\xampp\mysql\bin
を追加する方法もある。
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.4.11-MariaDB mariadb.org binary distribution
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)]>
また、このフォルダ構成のように、XXAMPPでは、XAMPPのフォルダ内にMySQL(mariaDB)のバイナリを内部に含んでいる仕組みになっており、MySQLの使用のさいには、その内部保管しているMwSQLを呼びだす仕組みになっている。
[https://mariadb.com/ mariaDB公式サイト] にWindowsのインストーラーがあるので、これをダウンロードしてきてもいい。
Windows版の mairDB をインストールしたら、一緒に HeidiSQL もインストールされますが、しばらくは HeidiSQL を起動する必要はありません。
インストーラーの指示どおりにインストールしたら、通常は下記の場所にmaiaDBの実行ファイルがインストールされる。
 C:\Program Files\MariaDB 11.1\bin
インストーラーを実行して終わったら、起動のためにはコマンドプロンプトを立ち上げ、下記のようにコマンド入力
C:\>cd C:\Program Files\MariaDB 11.1\bin
C:\Program Files\MariaDB 11.1\bin>start mariadbd
これで起動する。
インストールできたと思ったら、バージョン確認をしよう。
C:\Program Files\MariaDB 11.1\bin>mariadbd --version
mariadbd  Ver 11.1.2-MariaDB for Win64 on AMD64 (mariadb.org binary distribution)
C:\Program Files\MariaDB 11.1\bin>mariadb --version
mariadb from 11.1.2-MariaDB, client 15.2 for Win64 (AMD64), source revision 
終了の方法は・・・（※調査中）
コマンドラインから起動するのは難しいので、windowsタスクバーのスタートメニューからアイコンクリックで起動しよう。
「MySQL Client」というアプリが登録されているので、それを起動すると、インストール時の求められたMySQLパスワードを入力するコマンド画面が出てくるので、そのパスワードを入れてMySQL（mariaDB）に接続する。
MySQLサーバーを終了する場合は、単に
 exit
で良い。
もういちど「exit」すると、MySQLクライアント側も終了し、アプリのウィンドウが閉じてアプリ終了になる。
先にMySQLサーバー(mariadb-server)を起動する必要があります。
もしサーバーを起動せずにmariadbだけ起動してもエラーになり
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
のようなエラーメッセージが表示されるだけです。
起動コマンド
 $ systemctl start mariadb
でmariaDBサーバーが立ち上がります。
立ち上がるのはサーバーなので、インストールするのは mariadb だけでなく、加えて mariadb-server もインストールしないと、失敗してしまい、「Fail」などとmariaDB が返事をします。
なので mariadb-server もインストールしましょう。
起動状態の確認コマンドは、
 $ systemctl status mariadb
です。これを押すと、ターミナル（コマンド端末）画面に、確認結果の情報が列記されます。
なお、確認画面の終了方法は、qボタンです。
mariaDBサーバー終了は
 $ systemctl stop mariadb
です。
クライアント側は
 $ sudo mysql
で起動します。
クライアント側の起動を成功させるためには、先にmariadb-server を起動させておく必要があります。mariadb-serverを起動させないと、データベースへの接続エラーになり、クライアント側も起動できないです。
さて、MySQL(または mariaDB)を起動してからでないと、データベースの作成や編集などは、できないです。
mariaDB の起動に成功すると、
 [ユーザー名@localhost ~]$ sudo mysql
 Welcome to the MariaDB monitor.  Commands end with ; or \g.
 Your MariaDB connection id is 9
 Server version: 10.4.12-MariaDB MariaDB Server
 
 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)]> 
のようなメッセージが表示されます。
コマンドは
 MariaDB [(none)]> 
の > の後ろ以降に入力します。そもそも、キーボードの矢印キーでカーソルを移動しても、 > の前には移動できないです。
終了の方法は、 exit  または  quit   で終了します。
 MariaDB [testmysql]> exit
 Bye
と、MySQLからのログアウト時にサヨナラ(Bye)を言われるハズです。
MySQLの命令文は、大文字と小文字を区別しない。
命令の文末はセミコロン「;」である。
 $ sudo mysql
でmysqlを起動した後に、
 create database 作成したいデータベース名 ;
で、データベース作成できます。
セミコロン「;」を付け忘れないように、気をつけてください。
もし、セミコロン「;」を付け忘れた場合、mysql が「まだコマンド入力が終わってない」と判断して、続きの入力を待機しますので、「;」を追加するなど修正してください。またはデタラメな文字を入力したあとにワザとセミコロンを付けて終了させてから、入力をやりなおしてください。
 create database testmysql ;
結果として、
コマンドと結果の例
 MariaDB [(none)]> create database testmysql ;
 Query OK, 1 row affected (0.143 sec)
のように「OK」という返事が現れます。
Query（クエリ）とは、データベース用語のひとつです。
 show databases;
で、手元のパソコンでの MySQL 環境に存在しているデータベースの情報を閲覧できます。
たとえば「testmysql」を作成してから show databases; すると、下記のようになります。
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| testmysql          |
+--------------------+
4 rows in set (0.325 sec)
となります。
 performance_schema
以降に、ユーザーの作成したデータベース名が追加されます。
たとえば、さらに追加で「tesu2db」というデータベースを作成したとしましょう。 show databases; すると、下記のようになります。
mariaDB [(none)]> create database test2db ;
Query OK, 1 row affected (0.087 sec)
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test2db            |
| testmysql          |
+--------------------+
5 rows in set (0.001 sec)
MariaDB [(none)]>
いっぽう、データベースを削除する方法は、 drop databese  コマンドで、このコマンドの直後に下記のように削除したいデータベース名を記述します。つまり
 MariaDB [(none)]> drop database test2db;
です。
削除に成功すると、
 MariaDB [(none)]> drop database test2db;
 Query OK, 0 rows affected (1.918 sec)
のように、OKの返事が出ます。
実際、show databese で確かめてみると
mariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| testmysql          |
+--------------------+
4 rows in set (0.098 sec)
のように、たしかに指定した「test2db」が削除されるハズです。
 use データベース名;
で、そのデータベースに接続して、ユーザー（プログラマーであるアナタのこと）が使用や編集などをできるようになります。
接続に成功すると
MariaDB [(none)]> use testmysql;
Database changed
のように Database changed と表示されます。
create database  コマンドだけでは、データベースの入れ物を作っただけです。
まだ、中身は無い状態です。
MySQL では、右図のような、テーブル的なデータベースを作れます。（ただし、SQLだけでは画像的には表示されないです。右図は、説明のために載せています。）
MySQL でテーブルを作成する場合には手順として、useによる接続後は、まず、
右図の「元素番号」,「元素名」、「元素記号」に相当するような、タイトル部分を作らないといけません。
次のようなコマンドで作ります。
 create table testTable( gensobangou int,gensomei text,gensokigou text );
書式は
 create table 接続中のテーブル名( 1列目の名称 データ型 , 2列目の名称 データ型, 3列目の名称 データ型 );
です。
なお、テーブルの削除の方法は
 drop table 削除したいテーブル名;
です。
コマンドと結果の例
MariaDB [testmysql]> drop table testTable;
Query OK, 0 rows affected (2.125 sec)
作成したテーブル構造の情報を見る方法は、
 desc 調べたいテーブル名;
です。
MariaDB [testmysql]> desc testTable;
+-------------+---------+------+-----+---------+-------+
| Field       | Type    | Null | Key | Default | Extra |
+-------------+---------+------+-----+---------+-------+
| gensobangou | int(11) | YES  |     | NULL    |       |
| gensomei    | text    | YES  |     | NULL    |       |
| gensokigou  | text    | YES  |     | NULL    |       |
+-------------+---------+------+-----+---------+-------+
3 rows in set (0.033 sec)
テーブルへのデータの登録のコマンドは、
のような書式になります。
たとえば、
MariaDB [testmysql]> insert into testTable (gensobangou,gensomei,gensokigou) values(1, "Hydrogen", "H" );
Query OK, 1 row affected (0.486 sec)
のようになります。
テーブルに登録されたデータ内容を表示するには
select 列名 from テーブル名;
で表示できます。
たとえば、下記のようになります。
MariaDB [testmysql]> select * from testTable;
+-------------+----------+------------+
| gensobangou | gensomei | gensokigou |
+-------------+----------+------------+
|           1 | Hydrogen | H          |
+-------------+----------+------------+
1 row in set (0.079 sec)
「 * 」とは、この場合では「すべて」を意味する、コンピュータ業界の慣用句であり、このような意味での「*」の呼び名を『ワイルドカード』と言います。
まだ、1行目しか登録してないので、1行ぶんしか表示されないですが、もし2行目以降を登録すれば、2行目以降も select で表示されるようになります。
なお、このようにして登録された「 1, Hydrogen, H 」のような、SQLテーブルの中身の情報の行（ぎょう）のことを「レコード」と言います。
さて、もしアナタが文献調査か何かで「『Helium』（ヘリウム）という元素があるという事が分かり、元素記号も「He」だと分かったが、しかし元素番号が分からない」というように、部分的にしか情報が分からなくても、部分的にだけデータを登録することも可能です。
タイトルすべてを列記する必要はなく、
MariaDB [testmysql]> insert into testTable (gensobangou, gensomei) values(2, "Helium" );
Query OK, 1 row affected (0.183 sec)
のように、最初のカッコで、分かった項目の列タイトルだけを書いておけば、vaules の中身をその順番どおりに登録します。
また、select * すれば、表示結果は
MariaDB [testmysql]> select * from testTable;
+-------------+----------+------------+
| gensobangou | gensomei | gensokigou |
+-------------+----------+------------+
|           1 | Hydrogen | H          |
|           2 | Helium   | NULL       |
+-------------+----------+------------+
2 rows in set (0.000 sec)
となります。上記のように、未登録のデータの部分には「NULL」と表示されます。
特定のデータを検索したい場合、例えば下記のようになります。
MariaDB [testmysql]> SELECT * FROM testTable WHERE gensobangou = '2';
+-------------+----------+------------+
| gensobangou | gensomei | gensokigou |
+-------------+----------+------------+
|           2 | Helium   | NULL       |
+-------------+----------+------------+
1 row in set (0.001 sec)
MariaDB [testmysql]>
この例では、元素番号が2のものだけを検索しています。
書式は
 SELECT 表示したい項目 FROM 検索対象のテーブル WHERE 条件式 ;
です。
たとえば、ヘリウムのgensomeiデータ「Helium」の行（レコード）を削除したい場合、
MariaDB [testmysql]> delete from testTable where gensomei = "Helium";
Query OK, 1 row affected (0.214 sec)
となります。
これをすると、消えるのは、Helium という名前に加えて、gensobangou（元素番号）の「2」も消えます。
実際、delete のあとに show してみると
MariaDB [testmysql]> select * from testTable;
+-------------+----------+------------+
| gensobangou | gensomei | gensokigou |
+-------------+----------+------------+
|           1 | Hydrogen | H          |
+-------------+----------+------------+
1 row in set (0.000 sec)
のように、Helium だけでなく、元素番号「2」も消えています。
まず、use コマンドで作成済みデータベースに接続する。
MariaDB [(none)]> use testmysql
Database changed
MariaDB [testmysql]>
その後、私たちの例なら   select * from testTable;  のように入力すれば良い。
MariaDB [testmysql]> select * from testTable;
+-------------+----------+------------+
| gensobangou | gensomei | gensokigou |
+-------------+----------+------------+
|           1 | Hydrogen | H          |
|           2 | Helium   | NULL       |
+-------------+----------+------------+
2 rows in set (0.001 sec)
MariaDB [testmysql]>
のように表示される。
なお、設定の保存先は windows の場合、
C:\Program Files\MariaDB 11.1\data
である。（バージョン番号のところは、ダウンロードしたバージョンによって違う。）
そのフォルダに、私たちの作っている testtable もあるはず。
バックアップするときやコピーするときなどは、このフォルダをコピーすればいい。