外網訪問mysql數據庫命令(mysql 外網訪問)

本文目錄一覽:

怎樣設置才能允許外網訪問MySQL

1.在本機先使用root用戶登錄mysql:

mysql -u root -p”youpassword”

2.進行授權操作:

mysqlGRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;

3.重載授權表:

FLUSH PRIVILEGES;

4.退出mysql數據庫:

exit

如何允許外網可以連接mysql數據庫

設置mysql服務允許外網訪問,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.

1:設置mysql的配置文件

/etc/mysql/my.cnf

找到 bind-address =127.0.0.1 將其注釋掉;//作用是使得不再只允許本地訪問;

重啟mysql:/etc/init.d/mysql restart;

2:登錄mysql數據庫:mysql -u root -p

mysql use mysql;

查詢host值:

mysql select user,host from user;

如果沒有”%”這個host值,就執行下面這兩句:

mysql update user set host=’%’ where user=’root’;

mysql flush privileges;

或者也可以執行:

mysqlgrand all privileges on *.* to root@’%’ identifies by ‘ xxxx’;

其中 第一個*表示數據庫名;第二個*表示該數據庫的表名;如果像上面那樣 *.*的話表示所有到數據庫下到所有表都允許訪問;

『%’:表示允許訪問到mysql的ip地址;當然你也可以配置為具體到ip名稱;%表示所有ip均可以訪問;

後面到『xxxx’為root 用戶的password;

舉例:

任意主機以用戶root和密碼mypwd連接到mysql服務器

mysql GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘mypwd’ WITH GRANT OPTION;

mysql flush privileges;

IP為192.168.1.102的主機以用戶myuser和密碼mypwd連接到mysql服務器

mysql GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.102’ IDENTIFIED BY ‘mypwd’ WITH GRANT OPTION;

mysql flush privileges;

redmine怎麼讓外網能訪問mysql

root默認是不支持遠程登錄的,用外網連接你必須給權限呢?GRANT ALL PRIVILEGES ON *.* TO’username’@’ %’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;你先創建一個遠程登錄的賬號然後給它遠程登錄的權限

mysql的root賬戶,我在連接時通常用的是localhost或127.0.0.1,公司的測試服務器上的mysql也是localhost所以我想訪問無法訪問,測試暫停.

解決方法如下:

1,修改表,登錄mysql數據庫,切換到mysql數據庫,使用sql語句查看”select host,user from user ;” mysql -u root -pvmwaremysqluse mysql; mysqlupdate user set host = ‘%’ where user =’root’; mysqlselect host, user from user; mysqlflush privileges; 注意:最後一句很重要,目的是使修改生效.如果沒有寫,則還是不能進行遠程連接.

2,授權用戶,你想root使用密碼從任何主機連接到mysql服務器 GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘admin123’ WITH GRANT OPTION; flush privileges; 如果你想允許用戶root從ip為192.168.1.104的主機連接到mysql服務器 GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.104’ IDENTIFIED BY ‘admin123’ WITH GRANT OPTION; flush privileges;

路由器外網訪問mysql數據庫

1.符合以下條件

公網IP 無論動態還是靜態 靜態更好 動態如果嫌麻煩可以用DDNS服務 如花生殼

2.開放端口

無論你是否是路由連入 還是撥號連入 路由需要在路由器中做3306端口映射 撥號寬帶需要在防火牆中允許3306端口訪問 可以用telnet命令測試

3.MYSQL用戶權限 (這裡比較重要)

在安裝MYSQL是 ROOT默認是只有本地訪問權限 localhost可以在安裝的時候改成可以遠程remote安裝的最後一步 有個選項框要勾 這是WINDOWS版本的 如果是LINUX版本用命令加權限

如果建立新用戶 一定要要有%遠程權限才可以

4測試

在自帶命令行中測試 mysql -h(IP地址) -u用戶名 -p(密碼) 回車後如果出現mysql

如何訪問 外網mysql數據庫

設置mysql服務允許外網訪問,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.

1:設置mysql的配置文件

/etc/mysql/my.cnf

找到 bind-address =127.0.0.1 將其注釋掉;//作用是使得不再只允許本地訪問;

重啟mysql:/etc/init.d/mysql restart;

2:登錄mysql數據庫:mysql -u root -p

mysql use mysql;

查詢host值:

mysql select user,host from user;

如果沒有”%”這個host值,就執行下面這兩句:

mysql update user set host=’%’ where user=’root’;

mysql flush privileges;

或者也可以執行:

mysqlgrand all privileges on *.* to root@’%’ identifies by ‘ xxxx’;

其中 第一個*表示數據庫名;第二個*表示該數據庫的表名;如果像上面那樣 *.*的話表示所有到數據庫下到所有表都允許訪問;

『%’:表示允許訪問到mysql的ip地址;當然你也可以配置為具體到ip名稱;%表示所有ip均可以訪問;

後面到『xxxx’為root 用戶的password;

舉例:

任意主機以用戶root和密碼mypwd連接到mysql服務器

mysql GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘mypwd’ WITH GRANT OPTION;

mysql flush privileges;

IP為192.168.1.102的主機以用戶myuser和密碼mypwd連接到mysql服務器

mysql GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.102’ IDENTIFIED BY ‘mypwd’ WITH GRANT OPTION;

mysql flush privileges;

mysql 遠程連接方法

mysql開啟遠程連接:

以 root用戶登入mysql

GRANT all privileges ON wang.* TO ‘wang’@’%’ identified by ‘wang’;

flush privileges;

請點擊輸入圖片描述

修改配置文件

vi /etc/mysql/my.cnf

把bind-address           = 127.0.0.1  這行注掉

重啟數據庫

service mysql restart

請點擊輸入圖片描述

本地測試連接3306端口

telnet 192.168.1.77 3306   若已連通

確定已安裝mysql客戶端which mysql

/usr/bin/mysql

然後mysql -uwang -h192.168.1.77 -p  看能否登錄

請點擊輸入圖片描述

外網如何利用網絡輔助nat123實現訪問內網mysql數據庫?

網絡環境:動態公網IP。

明確mysql數據庫內網訪問地址端口,確保mysql數據庫服務正常,在內網可以正常訪問連接。內網使用nat123動態域名解析。內網服務器安裝nat123客戶端,並使用它。登陸。進入主面板/域名解析列表/添加域名。選擇動態域名解析記錄,使用二級域名,或自己的域名。鼠標放在輸入框有嚮導提示。

請點擊輸入圖片描述

路由器端口映射,路由映射mysql數據庫訪問端口。

因為公網IP是在路由器上的,外網訪問時,需要經過路由,需要在路由器上做端口映射,將內網mysql數據庫訪問端口打通。路由器端口映射位置:轉發規則/虛擬服務器/添加允許外網訪問端口和協議。我的mysql數據庫端口是默認的3306,我內網對應mysql數據庫主機的內網IP地址是192.168.1.22。

請點擊輸入圖片描述

外網訪問時,使用動態解析域名。

在外網訪問mysql數據庫時,使用動態解析域名進行連接訪問。域名是不變的,可以上網即可訪問,再也不擔心動態公網IP變化的問題。

請點擊輸入圖片描述

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/193148.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-01 14:59
下一篇 2024-12-01 14:59

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • 數據庫第三範式會有刪除插入異常

    如果沒有正確設計數據庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係數據庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • Python命令大全及說明

    Python是一種高級編程語言,由Guido van Rossum於1989年底發明。它具有良好的語法結構和面向對象的編程思想,具有簡潔、易讀、易學的特點,是初學者以及專業開發人員…

    編程 2025-04-29
  • Git config命令用法介紹:用正確的郵箱保障開發工作

    本文將詳細介紹如何使用git config命令配置Git的全局和本地用戶信息,特別是如何正確使用用戶郵箱,保障Git操作的正常進行。 一、git config命令介紹 Git中的每…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • Python SSH 遠程執行命令

    Python SSH 遠程執行命令是指在一個服務器上執行遠程另一個服務器上命令。如果你需要在本地機器上執行命令,或者在遠程機器上執行本地命令,你都可以使用 SSH。在 Python…

    編程 2025-04-29
  • leveldb和unqlite:兩個高性能的數據庫存儲引擎

    本文將介紹兩款高性能的數據庫存儲引擎:leveldb和unqlite,並從多個方面對它們進行詳細的闡述。 一、leveldb:輕量級的鍵值存儲引擎 1、leveldb概述: lev…

    編程 2025-04-28

發表回復

登錄後才能評論