日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Linux下连接Mysql服务器的方式

發(fā)布時間:2023/12/10 数据库 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux下连接Mysql服务器的方式 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一:mysql連接簡介

1、linux下mysql的連接方式有三種:

本地mysql命令連接
客戶端命令連接
腳本語言封裝方法連接

?

?

?

?

2、linux下mysql的連接方法有兩種:

TCP/IP協(xié)議連接
mysql.sock連接

?

?

?

二:mysql配置文件my.cnf的三個區(qū)塊講解

?

[client]區(qū)塊是mysql客戶端連接mysql服務器時讀取本地的my.cnf參數(shù)信息;

[mysql]區(qū)塊是mysql客戶端和mysql服務器部署在同一臺機器上,并且利用mysql命令連接mysql服務器時讀取本地的my.cnf參數(shù)信息;

[mysqld]區(qū)塊是mysql服務器啟動時讀取本地的my.cnf參數(shù)信息。

三、mysql客戶端和mysql服務器部署在同一臺機器上面

1、需要證明的結論:

①mysql客戶端和mysql服務器部署在同一臺機器上面時,用mysql命令連接本地mysql服務器指定localhost這個地址,不需要指定mysql服務器端口,讀取[mysql]區(qū)塊的配置信息,并且通過mysql.sock方法連接mysql服務器;

②mysql客戶端和mysql服務器部署在同一臺機器上面時,用mysql -h127.0.0.1連接mysql服務器讀取[client]區(qū)塊的配置信息,通過TCP/IP協(xié)議方法連接mysql服務器,并且默認指定3306端口;

③mysql客戶端和mysql服務器部署在同一臺機器上面時,用python腳本登入mysql服務器相當于客戶端方式登入,不讀取my.cnf配置文件,只是python用自己的模塊封裝客戶端參數(shù)信息。

2、開始證明以上結論:

①mysql客戶端和mysql服務器部署在同一臺機器上面時,用mysql命令連接本地mysql服務器指定localhost這個地址,不需要指定mysql服務器端口,讀取[mysql]區(qū)塊的配置信息,并且通過mysql.sock方法連接mysql服務器;

第一步:

執(zhí)行如下mysql命令連接mysql服務器

帶上密碼連接成功:

得出結論:

mysql客戶端和mysql服務器部署在同一臺機器時,執(zhí)行mysql命令登入,默認指定localhost這個主機地址去連接;

第二步:

修改mysql服務器端口號并且重載mysql服務

[mysqld] port=3307

連接正常:

得出結論:

mysql客戶端和mysql服務器部署在同一臺機器上面時,執(zhí)行mysql命令登入,不需要指定mysql服務器開放的端口;

第三步:

my.cnf的初始配置參數(shù):

[mysql] socket=/tmp/mysql.sock

可以成功登入mysql服務器

修改后的my.cnf配置參數(shù):

[mysql] socket=/tmp/mysql.sock_1

?出現(xiàn)如下報錯:

得出結論:

mysql客戶端和mysql服務器部署在同一臺機器上面時,用mysql命令連接本地mysql服務器指定localhost這個地址,不需要指定mysql服務器開放的端口,讀取[mysql]區(qū)塊的配置信息,并且通過mysql.sock方法連接mysql服務器;

到此為止關于結論①證明完畢!

②mysql客戶端和mysql服務器部署在同一臺機器上面時,用mysql -h127.0.0.1連接mysql服務器讀取[client]區(qū)塊的配置信息,通過TCP/IP協(xié)議方法連接mysql服務器,并且默認指定3306端口;

第一步:

my.cnf的初始配置參數(shù):

[client] port=3306 [mysqld] port=3306

?可以成功登入mysql服務器

?

修改my.cnf配置參數(shù):

[client] port=3307 [mysqld] port=3306

連接mysql服務器報錯:

指定端口連接mysql服務器:

得出結論:

mysql客戶端和mysql服務器部署在同一臺機器上面時,用mysql -h 127.0.0.1連接mysql服務器讀取的的[client]這個區(qū)塊的配置信息,走的是TCP/IP協(xié)議方法連接的,并且如果不指定端口則默認3306端口;

到此為止關于結論②證明完畢!

③mysql客戶端和mysql服務器部署在同一臺機器上面時,用python腳本登入mysql服務器相當于客戶端方式登入,不讀取my.cnf配置文件,只是python用自己的模塊封裝客戶端參數(shù)信息。

?第一步:

python腳本

#!/usr/bin/env python # -*- coding:utf-8 -*- import MySQLdbdef main():#conn = MySQLdb.connect(host='127.0.0.1', user='root', passwd='123', port=3306)conn = MySQLdb.connect(host='localhost', user='root', passwd='123', port=3306)cur = conn.cursor()cur.execute("show databases")print cur.fetchall()conn.commit()cur.close()conn.close()if __name__ == '__main__':main()

執(zhí)行結果如下:

MySQLdb源碼中有如下解釋:

得出結論:

mysql客戶端和mysql服務器部署在同一臺機器上面時,用python腳本登入mysql服務器相當于客戶端方式登入,不讀取my.cnf配置文件,只是python自己模塊封裝的客戶端參數(shù)信息。

到此為止關于結論③證明完畢!

四、mysql客戶端和mysql服務器部署在不同機器上面

1、需要證明的結論:

①mysql客戶端和mysql服務器部署在不同機器上面時,用mysql -h192.168.163.130 -p123登入mysql服務器讀取本機[client]參數(shù)信息,通過TCP/IP協(xié)議連接;

2、開始證明以上結論:

①mysql客戶端和mysql服務器部署在不同機器上面時,用mysql -h192.168.163.130 -p123登入mysql服務器讀取本機[client]參數(shù)信息,通過TCP/IP協(xié)議連接;

第一步:

mysql客戶端my.cnf配置信息:

[client] port=3306

mysql服務器my.cnf配置信息:

[mysqld] port=3306

可以正常連接:

第二步:

mysql客戶端my.cnf配置信息:

[client] port=3307

mysql服務器my.cnf配置信息:

[mysqld] port=3306

連接mysql服務器報錯:

?

指定mysql服務器端口連接,則成功:

得出結論:

mysql客戶端和mysql服務器部署在不同機器上面時,用mysql -h192.168.163.130 -p123登入mysql服務器讀取本機[client]參數(shù)信息,通過TCP/IP協(xié)議連接;

以上內容希望可以幫助你更深刻了解linux下mysql的連接方式

筆者寄語:大多數(shù)IT人掌握的知識都是花拳繡腿,只有少部分人不忘初心;加油!!!

轉載于:https://www.cnblogs.com/zhongguolute/p/7170386.html

總結

以上是生活随笔為你收集整理的Linux下连接Mysql服务器的方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。