差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
| linux:mysql [2019/01/03 11:32] – [パッケージインストール] ともやん | linux:mysql [2024/05/22 00:34] (現在) – [UNIX ドメインソケット経由で接続エラーになる場合] ともやん | ||
|---|---|---|---|
| 行 4: | 行 4: | ||
| ==== パッケージインストール ==== | ==== パッケージインストール ==== | ||
| - | MySQL をインストールするには以下のコマンドを実行する。 | + | MySQL をインストールするには以下のコマンドを実行する。\\ |
| - | <code> | + | <WRAP color_term> |
| - | $ sudo dnf install mariadb mariadb-server | + | <WRAP color_command>< |
| - | </code> | + | <font color="# |
| + | </pre></ | ||
| + | </ | ||
| ==== MySQLサービスの自動起動設定 ==== | ==== MySQLサービスの自動起動設定 ==== | ||
| < | < | ||
| 行 14: | 行 17: | ||
| mysqld | mysqld | ||
| </ | </ | ||
| - | | + | Fedora, |
| < | < | ||
| $ sudo systemctl enable mariadb.service | $ sudo systemctl enable mariadb.service | ||
| 行 20: | 行 23: | ||
| ==== MySQL の設定 ==== | ==== MySQL の設定 ==== | ||
| UTF-8を標準とするように設定する。 | UTF-8を標準とするように設定する。 | ||
| - | <code> | + | <WRAP color_term> |
| - | $ sudo vi / | + | <WRAP color_command>< |
| - | </code> | + | <font color="# |
| - | <code> | + | </pre></ |
| - | [mysqld] | + | <WRAP color_result>< |
| - | character-set-server=utf8 | + | <font color="# |
| + | <font color="# | ||
| + | <font color="# | ||
| + | <font color="# | ||
| + | <font color="# | ||
| + | |||
| + | <font color="# | ||
| + | <font color="# | ||
| - | [mysql] | + | <font color="# |
| - | default-character-set=utf8 | + | <font color="# |
| - | </code> | + | |
| + | <font color="# | ||
| + | <font color="# | ||
| + | <font color="# | ||
| + | <font color="# | ||
| + | <font color="# | ||
| + | <font color="# | ||
| + | <font color="# | ||
| + | <font color="# | ||
| + | </ | ||
| + | </ | ||
| ==== MySQLサービスの起動 ==== | ==== MySQLサービスの起動 ==== | ||
| | | ||
| 行 72: | 行 92: | ||
| </ | </ | ||
| - | | + | Fedora, |
| < | < | ||
| $ sudo systemctl start mariadb.service | $ sudo systemctl start mariadb.service | ||
| 行 118: | 行 138: | ||
| ==== ログイン確認 ==== | ==== ログイン確認 ==== | ||
| - | root にてログインできることを確認する。 | + | mariadb の root にてログインできることを確認する。 |
| - | <code> | + | <WRAP color_term> |
| - | $ mysql -u root -p | + | <WRAP color_command>< |
| - | Enter password: ******** <- root ユーザーのパスワードを入力 | + | <font color="# |
| - | Welcome to the MySQL monitor. | + | </ |
| - | Your MySQL connection id is 4 | + | <WRAP color_result>< |
| - | Server version: | + | Enter password: ******** <b class=DiY>& |
| + | <b>Welcome to the MariaDB | ||
| + | <b>Your MariaDB | ||
| + | <b>Server version: | ||
| - | Type ' | + | < |
| - | mysql> | + | < |
| - | </ | + | |
| + | MariaDB [(none)]& | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | === UNIX ドメインソケット経由の接続エラー === | ||
| + | <WRAP round tip minfont_12 90%> | ||
| + | UNIX ドメインソケット経由でローカルサーバーに接続できない場合は...🤪\\ | ||
| + | <WRAP color_term> | ||
| + | <WRAP color_command>< | ||
| + | <font color="# | ||
| + | </pre></ | ||
| + | <WRAP color_result>< | ||
| + | Enter password: | ||
| + | ERROR 2002 (HY000): Can& | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | 同一コンピューター内なので UNIX ドメインソケット (mysql.sock) で通信しようとするが、__Podman や Docker などのコンテナ仮想化では別マシンと通信するときと同様に TCP/IP ソケット通信でなければ接続できない。__\\ | ||
| + | |||
| + | < | ||
| + | または、< | ||
| + | <WRAP color_term> | ||
| + | <WRAP color_command>< | ||
| + | <font color="# | ||
| + | or | ||
| + | <font color="# | ||
| + | or | ||
| + | <font color="# | ||
| + | </ | ||
| + | <WRAP color_result>< | ||
| + | Enter password: | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | |||
| + | < | ||
| + | |||
| + | < | ||
| + | |||
| + | MariaDB [(none)]& | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | 参考: [[so> | ||
| + | </WRAP> | ||
| ===== データベース作成 ===== | ===== データベース作成 ===== | ||
| 行 135: | 行 204: | ||
| # mysql -u root -p | # mysql -u root -p | ||
| Enter password: ******** <- root ユーザーのパスワードを入力 | Enter password: ******** <- root ユーザーのパスワードを入力 | ||
| - | Welcome to the MySQL monitor. | + | Welcome to the MariaDB |
| - | Your MySQL connection id is 5 | + | Your MariaDB |
| - | Server version: | + | Server version: |
| + | |||
| + | Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. | ||
| - | Type ' | + | Type ' |
| </ | </ | ||
| - 現在存在しているデータベースを確認する。< | - 現在存在しているデータベースを確認する。< | ||
| - | mysql> SHOW DATABASES; | + | MariaDB [(none)]> SHOW DATABASES; |
| +--------------------+ | +--------------------+ | ||
| | Database | | Database | ||
| +--------------------+ | +--------------------+ | ||
| - | | information_schema | | + | | information_schema | |
| - | | mysql | | + | | mysql | |
| - | | test | | + | | performance_schema |
| +--------------------+ | +--------------------+ | ||
| - | 3 rows in set (0.00 sec) | + | 3 rows in set (0.004 sec) |
| </ | </ | ||
| - データベースの作成を行う。< | - データベースの作成を行う。< | ||
| - | mysql> CREATE DATABASE tomoyan_db; | + | MariaDB [(none)]> CREATE DATABASE tomoyan_db; |
| - | Query OK, 1 row affected (0.00 sec) | + | Query OK, 1 row affected (0.001 sec) |
| </ | </ | ||
| - データベースが正しく作成されていることを確認する。< | - データベースが正しく作成されていることを確認する。< | ||
| - | mysql> SHOW DATABASES; | + | MariaDB [(none)]> SHOW DATABASES; |
| +--------------------+ | +--------------------+ | ||
| | Database | | Database | ||
| +--------------------+ | +--------------------+ | ||
| - | | information_schema | | + | | information_schema | |
| - | | mysql | | + | | mysql | |
| - | | test | | + | | performance_schema |
| - | | tomoyan_db | + | | tomoyan_db |
| +--------------------+ | +--------------------+ | ||
| - | 4 rows in set (0.00 sec) | + | 4 rows in set (0.003 sec) |
| </ | </ | ||
| ===== ユーザー作成 ===== | ===== ユーザー作成 ===== | ||
| - ユーザーを作成するには以下のコマンドを実行する。< | - ユーザーを作成するには以下のコマンドを実行する。< | ||
| - | mysql> GRANT ALL PRIVILEGES ON tomoyan_db.* TO ' | + | MariaDB [(none)]> GRANT ALL PRIVILEGES ON tomoyan_db.* TO ' |
| | | ||
| - | Query OK, 0 rows affected (0.00 sec) | + | Query OK, 0 rows affected (0.003 sec) |
| </ | </ | ||
| - ユーザーが正しく作成されたことを確認するために以下のSQLを実行する。< | - ユーザーが正しく作成されたことを確認するために以下のSQLを実行する。< | ||
| - | mysql> SELECT host, user, password FROM mysql.user; | + | MariaDB [(none)]> SELECT host, user, password FROM mysql.user; |
| - | +----------------------+---------+------------------+ | + | +-----------+---------+-------------------------------------------+ |
| - | | host | + | | host | user | password |
| - | +----------------------+---------+------------------+ | + | +-----------+---------+-------------------------------------------+ |
| - | | localhost | + | | localhost | root | *A8950ACBC0ABE4A58931119F34574629F62B4CE9 |
| - | | green.fireball.local | root | 7ba00ed47f10af52 | + | | 127.0.0.1 | root | *A8950ACBC0ABE4A58931119F34574629F62B4CE9 |
| - | | 127.0.0.1 | + | | ::1 | root |
| - | | localhost | + | | localhost | tomoyan | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 |
| - | | green.fireball.local | | | | + | +-----------+---------+-------------------------------------------+ |
| - | | localhost | + | 4 rows in set (0.003 sec) |
| - | +----------------------+---------+------------------+ | + | |
| - | 6 rows in set (0.00 sec) | + | |
| </ | </ | ||
| - mysql データベースの権限テーブルより権限の再読み込みを行う。< | - mysql データベースの権限テーブルより権限の再読み込みを行う。< | ||
| - | mysql> FLUSH PRIVILEGES; | + | MariaDB [(none)]> FLUSH PRIVILEGES; |
| - | Query OK, 0 rows affected (0.00 sec) | + | Query OK, 0 rows affected (0.002 sec) |
| </ | </ | ||
| 行 197: | 行 266: | ||
| ユーザーのパスワードを変更するには以下のコマンドを実行する。 | ユーザーのパスワードを変更するには以下のコマンドを実行する。 | ||
| < | < | ||
| - | mysql> SET PASSWORD FOR tomoyan@" | + | MariaDB [(none)]> SET PASSWORD FOR tomoyan@" |
| + | Query OK, 0 rows affected (0.001 sec) | ||
| </ | </ | ||
| 行 203: | 行 273: | ||
| ユーザーをテーブルから削除する。 | ユーザーをテーブルから削除する。 | ||
| < | < | ||
| - | mysql> DROP USER ' | + | MariaDB [(none)]> DROP USER ' |
| + | Query OK, 0 rows affected (0.004 sec) | ||
| </ | </ | ||
| ===== 操作対象データベースの変更 ===== | ===== 操作対象データベースの変更 ===== | ||
| - | < | + | < |
| + | MariaDB [(none)]> USE tomoyan_db; | ||
| + | Database changed | ||
| + | </ | ||
| ===== SQLファイルの実行 ===== | ===== SQLファイルの実行 ===== | ||
| 行 213: | 行 287: | ||
| $ mysql -u user -p[password] [database] < sqlfile.sql | $ mysql -u user -p[password] [database] < sqlfile.sql | ||
| </ | </ | ||
| - | < | + | < |
| + | MariaDB [(none)]> | ||
| + | Database changed | ||
| + | MariaDB [tomoyan_db]> SOURCE filename; | ||
| + | </ | ||
| + | |||
| + | ===== データベースの削除 ===== | ||
| + | < | ||
| + | MariaDB [(none)]> | ||
| + | Query OK, 0 rows affected (0.012 sec) | ||
| + | </ | ||
| + | < | ||
| + | MariaDB [(none)]> | ||
| + | +--------------------+ | ||
| + | | Database | ||
| + | +--------------------+ | ||
| + | | information_schema | | ||
| + | | mysql | | ||
| + | | performance_schema | | ||
| + | +--------------------+ | ||
| + | 3 rows in set (0.003 sec) | ||
| + | </ | ||
| ===== テーブルのコピー ===== | ===== テーブルのコピー ===== | ||
| 行 219: | 行 314: | ||
| 以下のようにスキーマコピーとデータコピーで対応する。 | 以下のようにスキーマコピーとデータコピーで対応する。 | ||
| < | < | ||
| - | mysql> CREATE TABLE table_name_yyyymmdd LIKE table_name; | + | MariaDB [(none)]> CREATE TABLE table_name_yyyymmdd LIKE table_name; |
| - | mysql> INSERT INTO table_name_yyyymmdd SELECT * FROM table_name; | + | MariaDB [(none)]> INSERT INTO table_name_yyyymmdd SELECT * FROM table_name; |
| </ | </ | ||
| ===== ダンプファイルの作成方法(バックアップ) ===== | ===== ダンプファイルの作成方法(バックアップ) ===== | ||
| 行 256: | 行 351: | ||
| 以降の説明では、LAMP 環境と epel リポジトリの設定が済んでいることを前提としている。これらの条件を満たすためには、予め以下の二つの手順を実行しておくこと。\\ | 以降の説明では、LAMP 環境と epel リポジトリの設定が済んでいることを前提としている。これらの条件を満たすためには、予め以下の二つの手順を実行しておくこと。\\ | ||
| \\ | \\ | ||
| - | [[linux:centos_rpmfusion|CentOS で RPM Fusion を利用する]]\\ | + | [[linux:centos: |
| - | [[linux: | + | [[linux:centos: |
| ==== パッケージのインストール ==== | ==== パッケージのインストール ==== | ||