1、首先用root用戶登錄mysql
mysql -u root -p
輸入密碼后登錄成功
2、新建用戶
host,user @ IDENTIFIED BY ;(新建用戶);select host,user from user;(再次查看用戶)
第一次 第二次
3、賦權(quán)限
GRANT ALL PRIVILEGES ON *.* TO 'king'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
flush privileges;
注:king表示用戶名,%表示所有的電腦都可以連接,也可以設(shè)置某個ip地址運(yùn)行連接,第二個123456表示密碼
4、修改配置文件
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
注:有的可能在 /etc/mysql/my.cnf這里面因?yàn)榭春枚喽颊f在這里面,但是看配置文件就知道了,里面沒東西,又引入的其他的文件;
找到bind-address = 127.0.0.1
bind-address = 127.0.0.1 修改為(注釋掉)#bind-address = 127.0.0.1
5、重啟mysql
service mysql restart
6、有的需要配置端口
打開3306端口
sudo ufw allow 3306
7、測試,ok了;
這里以Ubuntu為例
在服務(wù)器可以連接公網(wǎng)的情況下
查看是否已安裝了
dpkg -l |grep mysql
未安裝的情況下,輸入命令:
sudo apt-get install mysql-server
安裝完成后,啟動:
sudo service mysql start
第一次登錄時沒有密碼,造成無法登錄這是由于MYSQL數(shù)據(jù)庫一開始生成了一個隨機(jī)密碼
兩種解決方案:
使用命令查看隨機(jī)密碼
sudo cat /etc/mysql/debian.cnf
利用該文件中的user 和password 登錄
在數(shù)據(jù)庫配置文件中加忽略密碼登錄
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
在這個文件增加一行
skip-grant-tables
這樣就可以直接執(zhí)行
mysql -u mysql
登錄mysql后
切換database
use mysql;
修改root用戶密碼
update user set authentication_string=PASSWORD(“新密碼”) where user=‘root’;
設(shè)置可遠(yuǎn)程登錄
update user set plugin=“mysql_native_password”;
刷新系統(tǒng)緩存
flush privileges;
退出登錄
quit
重啟mysql
sudo service mysql restart