本文目錄一覽:
- 1、如何讓mysql資料庫允許被遠程連接訪問?
- 2、mysql中如何查看有哪些個連接會話
- 3、mysql資料庫怎麼與客戶端連接資料庫
- 4、網頁與mysql資料庫怎麼連接?
- 5、什麼是資料庫連接?連接和會話之間有什麼關係?
如何讓mysql資料庫允許被遠程連接訪問?
第一:更改 「mysql」 資料庫里的 「user」 表裡的 「host」 項,從」localhost」改稱’%’。 \x0d\x0a或者新加條記錄,「host」 項為要訪問的ip地址,並授權。重啟mysql服務。 \x0d\x0a第二:在系統防火牆添加例外埠:3306,並允許例外。 \x0d\x0a\x0d\x0a錯誤提示: \x0d\x0aERROR 1130: Host ‘192.168.1.3’ is not allowed to connect to this MySQL server \x0d\x0a的解決方法: \x0d\x0a1。改表法。可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改 “mysql” 資料庫里的 “user” 表裡的 “host” 項,從”localhost”改稱”%” \x0d\x0a1.mysql -u root -pvmware\x0d\x0amysqluse mysql;\x0d\x0amysqlupdate user set host = ‘%’ where user = ‘root’;\x0d\x0amysqlselect host, user from user; \x0d\x0a\x0d\x0a2. 授權法。例如,你想myuser使用mypassword從任何主機連接到mysql伺服器的話。 \x0d\x0a\x0d\x0aGRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION; \x0d\x0a如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql伺服器,並使用mypassword作為密碼 \x0d\x0aGRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.3’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION; \x0d\x0a\x0d\x0a3.在window自帶的防火牆裡的例外添加3306埠 \x0d\x0a\x0d\x0a總結: \x0d\x0amysql -u root -p \x0d\x0amysqluse mysql; \x0d\x0amysqlselect ‘host’ from user where user=’root’; \x0d\x0amysqlupdate user set host = ‘%’ where user =’root’; \x0d\x0amysqlflush privileges; \x0d\x0amysqlselect ‘host’ from user where user=’root’; \x0d\x0a第一句是以許可權用戶root登錄 \x0d\x0a第二句:選擇mysql庫 \x0d\x0a第三句:查看mysql庫中的user表的host值(即可進行連接訪問的主機/IP名稱) \x0d\x0a第四句:修改host值(以通配符%的內容增加主機/IP地址),當然也可以直接增加IP地址 \x0d\x0a第五句:刷新MySQL的系統許可權相關表 \x0d\x0a第六句:再重新查看user表時,有修改。。 \x0d\x0a重起mysql服務即可完成。
mysql中如何查看有哪些個連接會話
連接 (connection)與會話 (session)這兩個概念均與用戶進程 (user process)緊密相關,但二者又具有不同的含義。
連接 :用戶進程和 Oracle 實例間的通信通道(communication pathway)。這個通信通道是通過進程間的通信機制(interprocess communication mechanisms)(在同一個計算機上運行用戶進程和 Oracle 進程)或網路軟體(network software)(當資料庫應用程序與 Oracle 伺服器運行在不同的計算機上時,就需要通過網路來通信)建立的。
會話 :用戶通過用戶進程與 Oracle 實例建立的連接[此處連接與上文中的連接含義不同 ,主要指用戶和資料庫間的聯繫 ]。例如,當用戶啟動 SQL*Plus 時必須提供有效的用戶名和密碼,之後 Oracle 為此用戶建立一個會話。從用戶開始連接到用戶斷開連接(或退出資料庫應用程序)期間,會話一直持續。
Oracle 資料庫中的同一個用戶可以同時創建多個會話。例如,用戶名/密碼為的SCOTT/TIGER 用戶可以多次連接到同一個 Oracle 實例。
當系統沒有運行在共享服務模式下時,Oracle 為每個用戶會話創建一個服務進程(server process)。而當系統運行在共享服務模式下時,多個用戶會話可以共享同一個服務進程。
mysql資料庫怎麼與客戶端連接資料庫
方法如下:
1、進入mysql,創建一個新用戶kay:
2、 格式:grant 許可權 on 資料庫名.表名 用戶@登錄主機 identified by “用戶密碼”;
grant select,update,insert,delete on *.* to kay@192.168.1.8 identified by “kaypass”;
3、 查看結果,執行:
use mysql;
select host,user,password from user;
可以看到在user表中已有剛才創建的kay用戶。host欄位表示登錄的主機,其值可以用IP,也可用主機名,
將host欄位的值改為%就表示在任何客戶端機器上能以kay用戶登錄到mysql伺服器,建議在開發時設為%。
update user set host = ‘%’ where user = ‘kay’;
網頁與mysql資料庫怎麼連接?
連接方法如下:
1.建立一個web項目
2.把資料庫驅動複製到lib目錄下。資料庫驅動有:mysql,sqlserver,oracle等 是什麼樣類型的數據導入相應驅動。
3.編寫一個連接資料庫的工具類,獲取一個連接。下面以mysql資料庫為例。
核心代碼:
public class DataUtils {
/**
* 從數據中獲取一個連接
* @return
*/
public static Connection getConn(){
Connection conn = null;
try {
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
//表為test,用戶名root,密碼admin。
conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/test”, “root”, “admin”);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
}
4.獲取到與相應資料庫的連接後,就可以做增刪改查操作了。記得做完操作後,關閉連接,釋放資源。
什麼是資料庫連接?連接和會話之間有什麼關係?
原理上和網站的一個session差不多,只是session是把key放在cookie裡面,資料庫連接是把key放在客戶端的library的內存里(比如.Net Sql Client)。對MS SQL來說,這個連接的協議叫TDS,底下可以走多種傳輸層協議,比如tcpip,也可以named pipe。而MySQL就又有自己的協議。當然在拿到key之前,先要走個authentication過程,比如Windows Authentication或者Sql authentication,過了authentication才會產生一個session key。如果是啟用SSL的話那麼整個連接上的數據流還會被加密,防止信息泄露或者中間人攻擊。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/230479.html