ubuntu環境下mysql安裝和配置
mysql安裝
ubuntu下用包管理工具apt安裝非常方便。
執行下面的命令即可完成安裝。
# apt-get install mysql-server-5.7
完成後,啓動mysql,執行:
#/etc/init.d/mysql start
啓動完成,說明安裝成功。
本地client連接:
#mysql
此時發現登陸不了,
執行:
#mysql -uroot -hlocalhost -p
還是登陸不了。
mysql需要做一下配置,才能正常使用。
root用戶配置
執行
#/etc/init.d/mysql stop
關閉mysql.
修改配置文件/etc/mysql/mysql.conf.d/mysqld.conf
在該文件最後面添加
skip-grant-tables
啓動mysql
#/etc/init.d/mysql start
連接mysql
#mysql回車
修改mysql默認root用戶密碼
mysql>use mysql;
mysql> UPDATE user SET Password=PASSWORD('123') WHERE User='root' AND Host='localhost';
mysql> flush privileges;
mysql> exit;
默認root用戶密碼設置成123
修改配置文件/etc/mysql/mysql.conf.d/mysqld.conf,註釋掉下面的配置
#skip-grant-tables
啓動mysql
/etc/init.d/mysql start
此時,用root用戶就可以登陸了。
但是當前也僅僅是能在本機登陸。如果想從其他機器連接到該mysql服務器,還是不行。
mysql遠程訪問配置
默認情況下,mysql僅僅允許從本機訪問,在/etc/mysql/mysql.conf.d/mysqld.conf文件可以查看,默認情況設置:
bind-address = 127.0.0.1
這就僅限於本機訪問。
設置爲:
bind-address = 0.0.0.0
就允許所有的機器訪問,也可以設置成一個特定的IP地址。
重啓mysql服務,就可以從其他機器訪問mysql了。
創建一個遠程訪問用戶
執行如下代碼:
mysql> create database demo default charset utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.00 sec)
mysql> create user 'demo'@'%' identified by '123456';
Query OK, 0 rows affected (0.01 sec)
mysql> grant all on *.* to 'demo'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> show grants for 'demo'@'%';
+-----------------------------------------+
| Grants for zy@% |
+-----------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'demo'@'%' |
+-----------------------------------------+
1 row in set (0.00 sec)
mysql>
創建demo用戶,並允許從所有機器訪問。