MySQL 遠程登陸

image.png

轉載地址:http://www.javashuo.com/article/p-dtlhjvin-k.htmlmysql

先用ssh登陸遠程服務器,用root連上數據庫看看狀況;

mysql -u root -p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';    //這個命令執行錯誤時,可能會報ERROR 1062 (23000): Duplicate entry '%-root' for key 1;這個錯誤,不用管它。
mysql>flush privileges;
mysql>select host, user from user; sql


建立完成了,在程序裏面鏈接發現仍是沒有權限,剛纔咱們只是建立了用戶,尚未對這個用戶分配權限;數據庫

grant all privileges on *.* to 'test'@'%'identified by '123456' with grant option;

all表明接受全部操做,好比 select,insert,delete....; *.* 表明全部庫下面的全部表;% 表明這個用戶容許從任何地方登陸;爲了安全期間,這個%能夠替換爲你容許的ip地址;安全

而後刷新mysql用戶權限相關表;服務器

flush privileges ;

我覺得就此收工了,等等,程序怎麼仍是連不上去,仍是 access deny ;app

難道端口不是3306嗎,打開 mysql配置文件(/etc/mysql/my.conf),是默認的3306,接着往下面看,發現一個關鍵地方;ssh

bind-address           = 127.0.0.1

原來這裏mysql默認綁定了本地ip,不接受其餘來源;註釋掉,重啓mysql 一切OK;ide

mysql命令:post

如何啓動/中止/重啓MySQL
1、啓動方式
一、使用 service 啓動:service mysqld start
二、使用 mysqld 腳本啓動:/etc/inint.d/mysqld start
三、使用 safe_mysqld 啓動:safe_mysqld&
2、中止
一、使用 service 啓動:service mysqld stop
二、使用 mysqld 腳本啓動:/etc/inint.d/mysqld stop
三、 mysqladmin shutdown 
3、重啓
一、 使用 service 啓動:service mysqld restart
二、使用 mysqld 腳本啓動:/etc/inint.d/mysqld restart
spa

還有兩個經常使用操做;

修改指定用戶密碼

update mysql.user set password=password('新密碼') where User="test" and Host="localhost";

刪除用戶

delete from user where User='test' and Host='localhost';
相關文章
相關標籤/搜索