macOS 10.12 Sierra にインストールしています。
macOS へは、Homebrew を使ってインストールします。インストールするだけで、 パスワードなしで MySQL にログインできるようになり、他の OS と比べて一番楽 です。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Home brewのインストールコードは変更になる場合があります。 下記オフィシャルサイトに表示されているイントールコードを コピーして使うほうが良いでしょう。
インストール
$ brew install mysql
バージョン確認
$ mysql --version
mysql Ver 8.0.15 for osx10.12 on x86_64 (Homebrew)
稼働状況確認
$ mysql.server status
ERROR! MySQL is not running, but PID file exists
起動
$ mysql.server start
Starting MySQL
SUCCESS!
稼働状況確認
$ mysql.server status
SUCCESS! MySQL running (1214)
ログイン
$ mysql -u root
データベースの確認
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.01 sec)
ログアウト
mysql> quit;
Bye
MySQL の終了
$ mysql.server stop
Shutting down MySQL
.. SUCCESS!
稼働状況確認
$ mysql.server status
ERROR! MySQL is not running
インストール
$ brew install mysql
バージョン確認
$ mysql --version
稼働状況確認
$ mysql.server status
起動
$ mysql.server start
終了
$ mysql.server stop
ログイン
$ mysql -u root
ログアウト
mysql> quit;
macOSの場合、OS を再起動した場合、MySQL も自動的に起動するコマンドをまだ 見つけられていません。
Linux Mint 18.3 Mate (Ubuntu 16.04 互換)へインストールしています。
apt パッケージマネージャのアップデート
$ sudo apt update
MySQL のインストール
$ sudo apt install mysql-server mysql-client
途中で新しいパスワードを聞かれるので任意のパワードを入力。「了解」を選択するにはタブキーを押す。
バージョン確認
$ mysql --version
mysql Ver 14.14 Distrib 5.7.25, for Linux (x86_64) using EditLine wrapper
稼働状況確認
$ sudo systemctl status mysql
・・・・
Active: inactive (dead)・・・・
・・・・
q を押して終了
MySQLの起動
$ sudo systemctl start mysql
稼働状況確認
$ sudo systemctl status mysql
・・・・
3月 13 07:48:10 mintos systemd[1]: Starting MySQL Community Server...
3月 13 07:48:11 mintos systemd[1]: Started MySQL Community Server.
q を押して終了
MySQLへのログイン
$ mysql -u root -p
パスワード入力
Welcome to the MySQL monitor. Commands end with ; or \g.
・・・・
mysql>
データベースの表示
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
パスワードの変更
mysql> use mysql;
mysql> update user set authentication_string='' where User='root';
ログアウト
mysql> quit;
Bye
MySQLの再起動
$ sudo systemctl stop mysql
$ sudo systemctl start mysql
もしくは
$ sudo systemctl restart mysql
パスワードなしでログイン
$ mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
・・・・
mysql>
バージョン確認
$ mysql --version
起動
$ sudo systemctl start mysql
終了
$ sudo systemctl stop mysql
再起動
$ sudo systemctl restart mysql
稼働状況確認
$ sudo systemctl status mysql
ログイン
$ mysql -u root
ログアウト
mysql> quit;
OS を再起動した時に MySQL を自動的に起動する。
$ sudo systemctl enable mysql
OS を再起動した時に MySQL を自動的に起動しない。
$ sudo systemctl disable mysql
CentOS 7.6 へインストールしています。CentOS 7 で root のパスワードを 再設定するのは、結構難しい作業です。
yum パッケージマネージャのアップデート
$ sudo yum update
CentOS にデフォルトでインストールされている MariaDB をアンストールする。
$ sudo yum remove mariadb-libs
$ sudo rm -rf /var/lib/mysql
MySQL のパッケージを読み込む。
$ sudo yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
MySQL のインストール
$ sudo yum install mysql-community-server mysql-community-devel mysql-utilities
バージョン確認
$ mysqld --version
mysqld Ver 5.7.25 for Linux on x86_64 (MySQL Community Server (GPL))
稼働状況確認
$ systemctl status mysqld.service
・・・・
Active: inactive (dead)・・・・
・・・・
起動
$ sudo systemctl start mysqld.service
稼働状況確認
$ systemctl status mysqld.service
Active: active (running)・・・・
CentOS 7 の場合、MySQL をインストールすると自動的に一時パスワードが発行 されます。まずは、その一時パスワードを本パスワードに変更しなければなりません。
sudo cat /var/log/mysqld.log | grep password
2019-03-12T09:20:32.906715Z 1 [Note] A temporary password is generated for root@localhost: xxxxx_xxxxxx
白字の部分が一時パスワードです。メモしておきます。
$ mysql_secure_installation
Enter password for user root:
一時パスワードを入力します。
New password:
任意の本パスワードを入力します。(12文字以上、小文字、大文字、数字、記号が含まれていなければなりません)
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) :
y
Remove anonymous users? (Press y|Y for Yes, any other key for No) :
y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) :
y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) :
y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) :
y
ひたすら y エンターか、何も入力せずにエンターを押し続けます。何も入力せずにエンターを押した場合は、y を選んだことになります。
... skipping.
All done!
まずは、本パスワードでログインします。
$ mysql -u root -p
本パスワードを入力
Welcome to the MySQL monitor. Commands end with ; or \g.
・・・・
データベースの表示
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.01 sec)
パスワードの変更
mysql> use mysql;
mysql> update user set authentication_string='' where User='root';
ログアウト
mysql> quit;
Bye
MySQL を再起動
$ sudo systemctl stop mysqld.service
$ sudo systemctl start mysqld.service
パスワードなしでログイン
$ mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
・・・・
mysql>
バージョン確認
$ mysqld --version
稼働状況確認
$ systemctl status mysqld.service
起動
$ sudo systemctl start mysqld.service
終了
$ sudo systemctl stop mysqld.service
ログイン
$ mysql -u root
ログアウト
mysql> quit;
OS を再起動した場合、MySQL も自動的に起動する。
$ sudo systemctl enable mysqld.service