VirtualBox上のMySQL にMySQLWorkbenchを使用して接続


```
yum remove mariadb-libs
rm -rf /var/lib/mysql/
```

```
yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
```
```
yum info mysql-community-server
```

yum -y install mysql-community-server

sudo yum info mysql-community-server

sudo yum install mysql-community-server


```
警告: /var/cache/yum/x86_64/7/mysql57-community/packages/mysql-community-client-5.7.40-1.el7.x86_64.rpm: ヘッダー V4 RSA/SHA256 Signature、鍵 ID 3a79bd29: NOKEY
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql から鍵を取得中です。

The GPG keys listed for the "MySQL 5.7 Community Server" repository are already installed but they are not correct for this package.
Check that the correct key URLs are configured for this repository.

Failing package is: mysql-community-client-5.7.40-1.el7.x86_64
GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
```
エラーが出たら

sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

mysqld --version
正常にインストールされていれば画像のように出力される。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/1e1e16e6-d587-fa16-9152-2d7f00369c0d.png)


sudo systemctl enable mysqld
sudo systemctl start mysqld

sudo systemctl status mysqld
正常に動いていれば以下のように出力される。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/d24ef6a0-e1f8-edbd-737f-b7be40323b8f.png)



sudo cat /var/log/mysqld.log | grep root

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/e25995ea-6a4a-21f9-ebaf-8df456c0adb7.png)

root@localhost:

y5;yhhi*&ayP

mysql -u root -p

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/91d30e5b-d199-d7bd-4054-bdc431cb42d8.png)

Enter password:
例
Enter password:y5;yhhi*&ayP

成功すると画像のようになる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/4812f170-aa9c-9027-2a63-bf48a2d21409.png)


# パスワードの変更
大文字・小文字・数字・記号を混ぜて８文字以上であること
例として以下を使用
PassWord123!
set password = password('PassWord123!');

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/dd23aebb-0a07-271c-2b5e-3e0729290530.png)




![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/1dffcb01-3d39-3a04-2e9c-e8952e268bc6.png)


設定を変更するために、一度MySQLから抜ける
コマンドは以下
exit


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/bc0ca47a-de22-ea1b-a3df-84925572f938.png)


# 設定ファイル

/etc/my.cnfに以下を設定ファイルの末尾に追記、サーバをリスタートする

vim /etc/my.cnf

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/360f7c2f-d73d-3462-eb1c-4946c324fc2b.png)

移動後

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/25b571bf-a784-dde4-6461-27a9749498fd.png)


# /etc/my.cnfの末尾に追記
character_set_server=utf8
skip-character-set-client-handshake

記載後

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/1a286e8d-af02-5ffc-4cb8-05ff075e1a10.png)

保存して終了
:wq

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/ee4d6cc3-a132-3758-3ca4-473e7a745e9a.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/6d6045a5-f5a9-f753-3c19-60e746948f67.png)



サーバのリスタート
sudo systemctl restart mysqld

正常に動作しているか確認

sudo systemctl status mysqld

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/30b5e1c9-cf25-49a3-3405-8610b829bfbf.png)

正常に動作していれば上記のように出力される。

# 動作確認

sudo firewall-cmd --add-service=mysql　--zone=public --permanent

sudo systemctl restart firewalld

sudo systemctl status firewalld

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/c3dd67b4-89e9-04b6-e908-df86cbecc619.png)

外部からの接続を許可

mysql -u root -p
PassWord123!

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/e33b0d68-e630-91c2-b0f2-97a2f42bc27e.png)


grant all privileges on *.* to root@'12.7.%' identified by 'PassWord123!';

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/726333e6-6cd4-c8d0-d87f-8ea66e214d04.png)



# ユーザー覧表示する

SELECT Host, User FROM mysql.user;

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/58164927-6b01-e19e-549f-774848315ea0.png)

上記で入力した
12.7.%が表示されていればOK



# MySQL Workbenchインストール

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/720cb032-a985-ad3b-66a9-809a96698f56.png)

MySQL Workbench のダウンロード用 Web ページを開く
https://dev.mysql.com/downloads/workbench/

「Download」をクリック



# スロークエリログ設定
Oracle Web アカウントにサインアップ，ログイン
ダウンロードしたプログラムを実行
ようこそ画面
「Next」をクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/93def53e-cd97-6dda-95aa-ca21e3a14ce6.png)

種類の選択
「Complete」を選び， 「Next」をクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/fbbea002-3997-133e-0542-abe57f55b110.png)

インストールの開始
「Install」をクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/e53d55e0-47dc-eb29-a706-4226817d0b48.png)

インストール終了の確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/3a0f23f9-6010-0efd-7eeb-ad44b1d78cac.png)


# MySQL Workbenchの起動と接続

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/94aacde6-ae5e-b25e-1ca6-39c4add73e45.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/af800148-3929-0206-9a8f-30a35a390eba.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/dd787158-d762-3910-e60f-8f74ea335691.png)



![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/b2d852ae-f2c0-c858-b97a-3699f2f4b8c9.png)



```
SSH Hostname
    127.0.0.1:3333
    コロンより後ろの番号はVirtualBoxの各自で設定しているホストポートを記載
SSH Username
    通常はvagrant, それぞれの環境に合わせてユーザー名を指定今回はroot
SSH Password	
    rootに変更する際に使用するパスワード記載
SSH Key File	鍵認証を利用しいている場合は指定
    今回は記載しない
MySQL Hostname	
    localhostが127.0.0.1
MySQL Server Port
    3306　そのまま
Username	
    MySQLにログインするときのユーザー名、rootとか
Password
    MySQLにログイン際のパスワード、今回はPassWord123!

DefaultSchema
    そのまま
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/43ed6a40-82f2-275c-14f4-d1b874ef7ccd.png)

全てを設定したら、Test Connethon をクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/0885f5d8-6e27-0393-828a-3fe600df072e.png)

正常に接続できると、「Successfully made the MySQL connection」と表示される。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/b372a786-c045-4472-383a-0fdd39eb721f.png)


ダイアログを「OK」で閉じた後、設定画面をCloseをクリックして閉じる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/b16626e6-0fe7-8840-1512-01306447d36a.png)


作成したものが、画面に表示される。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/c5db21c1-0794-c824-3d32-09f81ed9220f.png)

作成したものを選択すると以下の画面に遷移する

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/927e4d3e-4437-8141-bd64-7290d719b2b3.png)

正常に動作するか確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/f95d897c-e046-ab5b-379f-e79ebd103d8d.png)

select * from sys.host_summary;

赤枠のボタンをクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/08c52ff4-a0cb-e0e5-7642-2bcbc7736fcc.png)

結果が表示される

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/e5e0a2f2-32b9-4ecc-f31c-404b46a9335b.png)


フォルダー選択ボタンをクリックしインポートしたいファイルを

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/2e796641-3139-6f09-dd2d-60905675680d.png)

正常にインポートされると、以下のようになる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/605a166a-b931-063b-98a2-8b5f88ba477f.png)

Query１をクリックし元の画面に戻る

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/32b76eaf-f9b3-8d97-da33-d329bca96796.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/6592af61-66ac-cf94-6d3d-af368c41d1c5.png)


SQLを実行
select * from world.city, world.country;

実行結果が正常に表示されれば成功

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/a2fc46eb-bf53-0492-05d3-c1369d05a088.png)



# /etc/my.cnfに追記する
#slow query log
slow_query_log=1
long_query_time=1.0
log_queries_not_using_indexes=1
slow_query_log_file='slow_query.log'

1秒以上要するクエリとインデックスを利用しないクエリが、以下のディレクトリに出力される
/var/lib/mysql/slow_query.log


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/200760/8593e28b-e410-a958-3339-0c26b9c3f2d9.png)