mysql如何允許遠端訪問
預設情況下,mysql帳號不允許從遠端登陸,只能在localhost登入。本文提供了二種方法設定mysql可以透過遠端主機進行連線。
修改使用者表的資料
登入mysql後,更改 mysql 資料庫裡的 user 表裡的 host 項,將localhost改稱%
mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;
修改授權
例如: 你想myuser使用mypassword(密碼)從任何主機連線到mysql伺服器的話。
mysql>GRANT ALL PRIVILEGES ON . TO ‘myuser’@’%’IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION; mysql>FLUSH PRIVILEGES
例如:如果你想允許使用者myuser從ip為192.168.1.6的主機連線到mysql伺服器,並使用mypassword作為密碼
mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;mysql>FLUSH PRIVILEGES
檢查防火牆
如果還不能連線,就可能是防火牆的鍋了。
#透過systemctl status firewalld檢視firewalld狀態#FirewallD is not runningsystemctl unmask firewalld systemctl start firewalld#再次透過systemctl status firewalld檢視firewalld狀態,顯示running即已開啟了。#再次執行執行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示success,表示設定成功,這樣就可以繼續後面的設定了。firewall-cmd --reloadsystemctl stop firewalld.service #關閉防火牆
修改mysql配置檔案
如果檢查了防火牆還是不行,那就用最後一招,修改配置檔案(博主用了最後一招才解決遠端訪問的問題)
my.cnf配置檔案的位置,一般在/etc/my.cnf,有些版本在/etc/mysql/my.cnf
在配置檔案中,增加2行程式碼
[mysqld]bind-address = 0.0.0.0
重啟服務,遠端訪問,發現可以正常訪問了
p.s.
mysql8.0版本配置方法不同,按照上述方法配置之後,Navicat可以正常連線,但是nodejs程式碼連線報錯
Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
解決辦法(修改加密規則為普通模式,預設是嚴格加密模式):
依次輸入以下語句
mysql>ALTER USER 'root'@'%' IDENTIFIED BY 'xxxxxxxx' PASSWORD EXPIRE NEVERmysql>ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'xxxxxxxx';mysql>FLUSH PRIVILEGES;
用nodejs測試資料庫連線,應該就可以使用了
mysql5.5 允許遠端訪問
1.啟動mysql 的cmd命令
2.使用“use mysql”命令,選擇要使用的資料庫,修改遠端連線的基本資訊,儲存在mysql資料庫中,因此使用mysql資料庫。
3.使用“GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;”命令可以更改遠端連線的設定。
4.使用“flush privileges;”命令重新整理剛才修改的許可權,使其生效。
5.使用“select host,user from user;”檢視修改是否成功。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69948194/viewspace-2668406/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mariadb配置允許遠端訪問方式
- CentOS 配置Mysql允許遠端登入CentOSMySql
- MYSQL設定允許所有IP訪問MySql
- 配置 MySQL 允許遠端連線的方法MySql
- 允許mysql遠端使用者連線。MySql
- 怎樣設定才能允許外網訪問MySQLMySql
- mysql賬戶新增遠端訪問MySql
- Laravel API 允許跨域訪問LaravelAPI跨域
- mysql-v8.x設定許可權可以遠端訪問MySql
- Mysql8 設定允許遠端連線 (Windows環境)MySqlWindows
- win10允許遠端桌面連線如何設定_win10怎樣設定允許遠端桌面連線Win10
- 允許本地Sql Server 遠端連線SQLServer
- 設定Mysql5.6允許外網訪問詳細流程MySql
- mysql5.7.22-log 修改遠端訪問MySql
- MySQL 開啟 3306 埠遠端訪問MySql
- springboot配置CORS允許跨域訪問Spring BootCORS跨域
- Docker 如何開啟遠端訪問Docker
- NAS如何實現遠端訪問
- 開啟mysql遠端登入訪問功能MySql
- mysql8.0授權root遠端訪問MySql
- 配置redis伺服器允許遠端連線Redis伺服器
- 允許區域網內其他主機訪問本地MySql資料庫MySql資料庫
- TeamViewer遠端訪問View
- 允許遠端連線到MySQL資料庫伺服器的步驟MySql資料庫伺服器
- PHP 設定多域名允許跨域訪問PHP跨域
- Linux 防火牆只允許指定IP 埠訪問Linux防火牆
- linux下mysql開啟遠端訪問許可權及防火牆開放3306埠LinuxMySql訪問許可權防火牆
- jupyter notebook 遠端訪問
- Linux SSH遠端訪問Linux
- wamp基本用法,允許他人訪問,修改根目錄
- Ubuntu18.04 安裝 MySQL 以及設定遠端訪問UbuntuMySql
- mysql設定指定ip遠端訪問連線例項MySql
- SSH遠端訪問及控制
- 遠端訪問及控制——ssh
- rabbitmq 新增遠端訪問功能MQ
- linux SSH服務允許root使用者遠端登入Linux
- mysql8.x docker遠端訪問配置詳解硨磬MySqlDocker
- Solaris 11 設定root使用者允許SSH遠端登入