MySQL 的啟動和連接方式實例分析
本文實例講述了MySQL 的啟動和連接方式。分享給大家供大家參考,具體如下:
MySQL運行包括兩部分,一部分是服務器端程序mysqld,另外一部分則是客戶端程序mysql。只有mysqld啟動了,mysql客戶端才能與之連接。mysqld的啟動方式有4種,同樣mysql的連接方式也有4種。
mysqld的啟動方式方式1:mysqldmysqld是一個可執行命令,也是服務器端程序,啟動這個程序就相當于啟動了MySQL服務器端的進程。但這個命令不常用,常用mysqld_safe命令。
命令格式:mysqld [OPTIONS]如:mysqld --defaults-file=/etc/my.cnf查看幫助:mysqld --verbose --help方式2:mysqld_safe
mysqld_safe是一個啟動腳本,間接引用mysqld。在啟動mysqld_safe腳本時,在啟動MySQL服務器進程時,同時會啟動一個守護進程,作用是監控mysqld,如mysqld服務掛了后,會立即重啟一個mysqld服務。
另外,mysqld_safe啟動方式也會把運行過程的報錯日志和其它一些診斷信息輸出到某一個文件中,這樣方便我們排查解決問題。這個啟動方式是最常用的方式。
命令格式:mysqld_safe [OPTIONS] &如:mysqld_safe --defaults-file=/etc/my.cnf &查看幫助:mysqld_safe --help方式3:mysqld_multi
如需要在一臺主機運行多個MySQL實例,則就可以使用mysqld_multi來對不同的mysqld服務進行管理,這個啟動方式對MySQL集群很有幫助。
命令格式:mysqld_multi [OPTIONS] {start|reload|stop|report} [GNR,GNR,GNR...]查看幫助:mysqld_multi --help方式4:mysql.server
mysql.server也是一個啟動腳本,它會間接的調用mysqld_safe,在調用mysql.server時在后邊指定start參數就可以啟動服務器程序了。這個啟動方式一般是通過RPM包安裝的MySQL產生的。
mysql.server 文件其實是一個鏈接文件,它的實際文件是 ../support-files/mysql.server
命令格式:mysql.server start|restart|stop|statusmysql的連接方式方式1:TCP/IP套接字
在類Unix和Windows操作系統下都可以使用,TCP/IP套接字是一個網絡協議,通過MySQL服務器啟動時監聽一個端口,客戶端啟動連接時指明MySQL服務器的主機IP+端口即可實現連接。
此種通信方式,MySQL服務器和客戶端可以部署在不同主機上,也是最常用的一種連接方式。
mysql -h主機IP -P端口 -u用戶 -p如:mysql -h127.0.0.1 -P3306 -uroot -p
僅限類Unix操作系統下使用,Unix套接字不是網絡協議,只能在MySQL服務器和客戶端在同一個主機上才能使用。
如果我們在啟動客戶端程序的時候指定的主機名為localhost,或者指定了--protocol=socket的啟動參數,那服務器程序和客戶端程序之間就可以通過Unix域套接字文件來進行通信了。
MySQL服務器程序默認監聽的Unix域套接字文件路徑為/tmp/mysql.sock,客戶端程序也默認連接到這個Unix域套接字文件。
1. mysql -uroot -p //默認通過socket通信 缺省localhost2. mysql -hlocalhost -uroot -p3. mysql -S socket文件路徑 -uroot -p如:mysql -S /var/run/mysqld/mysqld.sock -uroot -p
查看socket文件位置:show variables like ’socket’;
僅限類Windows操作系統下使用,只能在MySQL服務器和客戶端在同一個主機上才能使用。
需要在啟動服務器程序的命令中加上--enable-named-pipe參數,然后在啟動客戶端程序的命令中加入--pipe或者--protocol=pipe參數。
?enable-named-pipe=on/off;方式4:共享內存
僅限類Windows操作系統下使用,只能在MySQL服務器和客戶端在同一個主機上才能使用。
需要在啟動服務器程序的命令中加上--shared-memory參數,在成功啟動服務器后,共享內存便成為本地客戶端程序的默認連接方式,不過我們也可以在啟動客戶端程序的命令中加入--protocol=memory參數來顯式的指定使用共享內存進行通信。
?shared-memory=on/off;
更多關于MySQL相關內容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL常用函數大匯總》、《MySQL日志操作技巧大全》、《MySQL事務操作技巧匯總》、《MySQL存儲過程技巧大全》及《MySQL數據庫鎖相關技巧匯總》
希望本文所述對大家MySQL數據庫計有所幫助。
相關文章:
