欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL之my.cnf配置文件圖文詳解

 更新時(shí)間:2022年09月08日 09:52:30   作者:TimeFriends  
my.cnf是mysql啟動(dòng)時(shí)加載的配置文件,一般會(huì)放在mysql的安裝目錄中,用戶也可以放在其他目錄加載,下面這篇文章主要給大家介紹了關(guān)于MySQL之my.cnf配置文件的相關(guān)資料,需要的朋友可以參考下

引言

之前沒(méi)有仔細(xì)研究過(guò)my.cnf文件,今天有時(shí)間研究了一下my.cnf中的一些概念,這里簡(jiǎn)單整理如下,如果有什么問(wèn)題,還請(qǐng)大家指出。

按照教程安裝好MySQL之后,打開etc目錄下的my.cnf文件,大概可看到下面這樣的參數(shù)列表,可能不同版本的mysql參數(shù)多少會(huì)有一些不一致,但是并不妨礙我們理解。

圖片

首先,我們可以看到這個(gè)文件里面有mysqld和mysql_safe兩類參數(shù),我們知道m(xù)ysqld和mysql_safe都可以啟動(dòng)mysql服務(wù),那么mysqld和mysql_safe這兩個(gè)類之間有什么不同呢?要討論這個(gè)問(wèn)題,我們需要引入第三個(gè)類別mysql.server,并同時(shí)討論這三種啟動(dòng)方式的區(qū)別。

問(wèn)題1.mysql.server,mysqld,mysqld_safe的區(qū)別

mysql.server

它是一個(gè)服務(wù)器啟動(dòng)的shell腳本,主要作用就是為了方便啟動(dòng)和關(guān)閉mysql服務(wù),它使用mysql_safe來(lái)啟動(dòng)mysql服務(wù)器,在mysql.server啟動(dòng)服務(wù)器之前,它將目錄轉(zhuǎn)換到mysql安裝目錄里面去,然后調(diào)用mysqld_safe。mysql.server通過(guò)向服務(wù)器發(fā)送一個(gè)信號(hào)來(lái)停止它,也可以使用mysqladmin shutdown命令來(lái)停止服務(wù)器,如果你使用源碼或者二進(jìn)制格式安裝mysql(沒(méi)有自動(dòng)安裝mysql.server這個(gè)腳本),你可以手動(dòng)安裝; 這個(gè)腳本在mysql安裝目錄下的support-files目錄里邊或者在源碼包里邊;為了能使用service mysqld start命令啟動(dòng)mysql服務(wù),此時(shí)需要做的是將mysql.server的腳本復(fù)制到/etc/init.d目錄下,然后重命名為mysqld,最后給予執(zhí)行權(quán)限。mysqld.server會(huì)從配置文件的[mysqld] [mysql.server] 區(qū)域讀取配置選項(xiàng);

可以在全局配置文件/etc/my.cnf中配置mysql.server,mysql.server腳本支持下面這些選項(xiàng);一旦指定,它們必須放在配置文件中,不能放到命令行中(mysql.server支持的命令行參數(shù)只有start和stop);

–basedir mysql安裝目錄;

–datadir 數(shù)據(jù)文件的路徑;

–pid-file 服務(wù)器寫自己的進(jìn)程號(hào)的文件;如果這個(gè)不指定,mysql使用默認(rèn)的hostname.pid;

The PID file value被傳遞給mysqld_safe,覆蓋了[mysqld_safe]下面指定的值;因?yàn)閙ysql.server讀取[mysqld]選項(xiàng)組而不讀取[mysqld_safe]選項(xiàng)組,所以為了在使用mysql.server 調(diào)用mysqld_safe的時(shí)候, mysqld_safe能夠獲得一樣的pid,我們可以讓[mysqld]選項(xiàng)組和[mysqld_safe]選項(xiàng)組使用同一個(gè)pid-file;

mysql_safe

這是mysql服務(wù)啟動(dòng)腳本,它是mysqld的父進(jìn)程,它調(diào)用mysqld啟動(dòng)數(shù)據(jù)庫(kù)服務(wù),并在啟動(dòng)MySQL服務(wù)器后繼續(xù)監(jiān)控其運(yùn)行情況,并在其死機(jī)時(shí)重新啟動(dòng)它,當(dāng)我們開啟mysqld_safe命令的時(shí)候,可以防止mysql服務(wù)的意外終止,這里做一個(gè)小小的測(cè)試。

首先查看當(dāng)前的mysql服務(wù):

圖片

然后發(fā)現(xiàn)服務(wù)中有一個(gè)mysql_safe和一個(gè)mysqld,其中mysqld_safe的端口號(hào)是1929,mysqld的端口號(hào)是2228,這個(gè)時(shí)候,我們把2228的進(jìn)程殺掉:

圖片

我們發(fā)現(xiàn),進(jìn)程號(hào)為2228的mysqld進(jìn)程已經(jīng)被殺掉,進(jìn)程號(hào)為1929的mysqld_safe進(jìn)程還在,又重新生成了一個(gè)進(jìn)程號(hào)為2288的mysqld進(jìn)程,接下來(lái),我們殺掉mysqld_safe的進(jìn)程,kill -9 1929,得到的結(jié)果如下:

圖片

我們發(fā)現(xiàn)殺掉mysqld_safe之后,只剩下進(jìn)程號(hào)為2288的mysqld進(jìn)程了,并沒(méi)有生成新的mysqld_safe進(jìn)程,這個(gè)時(shí)候,在再次殺掉mysqld進(jìn)程2288,結(jié)果如下:

圖片

此時(shí),所有的進(jìn)程都被關(guān)閉掉了,綜合上述操作,我們可以發(fā)現(xiàn),當(dāng)mysqld_safe進(jìn)程存在時(shí),我們無(wú)法直接殺掉mysqld進(jìn)程,當(dāng)我們殺掉mysqld_safe進(jìn)程的時(shí)候,此時(shí)才可以殺掉mysqld進(jìn)程,這便是mysqld_safe的守護(hù)進(jìn)程作用,它可以防止mysqld進(jìn)程被意外終止。

mysqld

mysqld是關(guān)于服務(wù)器端的程序,要想使用客戶端程序,該程序必須運(yùn)行,因?yàn)榭蛻舳送ㄟ^(guò)連接服務(wù)器來(lái)訪問(wèn)數(shù)據(jù)庫(kù)。

問(wèn)題2.mysql的三種啟動(dòng)方式:

1、mysqld

啟動(dòng)mysql服務(wù)器:

客戶端連接:

2、mysqld_safe

啟動(dòng)mysql服務(wù)器:

客戶端連接:

3、mysql.server

啟動(dòng)mysql服務(wù)器:

客戶端連接:同1、2

問(wèn)題3.socket文件mysql.sock詳解

mysql有兩種連接方式,一種是TCP/IP的方式,另外一種是socket的方式,mysql.sock主要用戶程序與mysqlserver在同一機(jī)器上,發(fā)起本地連接的時(shí)候使用,即無(wú)需再連接服務(wù)時(shí)使用host和IP,mysql.sock是隨著每一次mysql server的啟動(dòng)而生成的,當(dāng)服務(wù)重啟時(shí),mysql.sock也會(huì)重新生成。利用mysql.sock連接服務(wù)的樣例如下:

linux下安裝mysql連接的時(shí)候經(jīng)?;靥崾菊f(shuō)找不到mysql.sock文件,解決辦法很簡(jiǎn)單:

1.如果是新安裝的mysql,提示找不到文件,就搜索下,指定正確的位置。

2.如果mysql.sock文件誤刪的話,就需要重啟mysql服務(wù),如果重啟成功的話會(huì)在datadir目錄下面生成mysql.sock 到時(shí)候指定即可。

問(wèn)題4.查看mysql的配置文件調(diào)用順序

mysql --help|grep “my.cnf”,當(dāng)啟動(dòng)mysql服務(wù)的時(shí)候,會(huì)從當(dāng)前目錄的my.cnf中去讀對(duì)應(yīng)的參數(shù),優(yōu)先級(jí)順序和輸出順序保持一致。

圖片

問(wèn)題5.MySQL的pid文件介紹

MySQL pid 文件記錄的是當(dāng)前 mysqld 進(jìn)程的 pid,pid 亦即 Process ID。

1、未指定

pid 文件時(shí),pid 文件默認(rèn)名為 主機(jī)名.pid,存放的路徑在默認(rèn) MySQL 的數(shù)據(jù)目錄。通過(guò) mysqld_safe 啟動(dòng) MySQL
時(shí),mysqld_safe 會(huì)檢查 pid 文件,如果 pid 文件不存在,不做處理;如果文件存在,且 pid 已占用則報(bào)錯(cuò) “A
mysqld process already exists”,如果文件存在,但 pid 未占用,則刪除 pid 文件。

2、查看 MySQL 的源碼可以知道,mysqld 啟動(dòng)后會(huì)通過(guò) create_pid_file 函數(shù)新建 pid 文件,通過(guò) getpid() 獲取當(dāng)前進(jìn)程 pid 并將 pid 寫入 pid 文件。

3、因此,通過(guò) mysqld_safe 啟動(dòng)時(shí), MySQL pid 文件的作用是:在數(shù)據(jù)文件是同一份,但端口不同的情況下,防止同一個(gè)數(shù)據(jù)庫(kù)被啟動(dòng)多次。

通過(guò) mysqld_safe 啟動(dòng)時(shí), MySQL pid 文件的作用是:在數(shù)據(jù)文件是同一份,但端口不同的情況下,防止同一個(gè)數(shù)據(jù)庫(kù)被啟動(dòng)多次。

關(guān)于MySQL之my.cnf配置文件,你學(xué)廢了么?

總結(jié)

到此這篇關(guān)于MySQL之my.cnf配置文件的文章就介紹到這了,更多相關(guān)MySQL my.cnf配置文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL修改root密碼的多種方法(推薦)

    MySQL修改root密碼的多種方法(推薦)

    本文給大家分享了三種方法來(lái)解決mysql修改root密碼的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧
    2017-03-03
  • MySQL的幾種安裝方式及配置問(wèn)題小結(jié)

    MySQL的幾種安裝方式及配置問(wèn)題小結(jié)

    這篇文章主要介紹了MySQL的幾種安裝方式及配置,然后在文章底部給大家介紹了安裝過(guò)程中的問(wèn)題總結(jié),非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-07-07
  • MySQL執(zhí)行計(jì)劃詳解

    MySQL執(zhí)行計(jì)劃詳解

    給大家?guī)?lái)了關(guān)于mysql的相關(guān)知識(shí),主要介紹了從Mysql源碼中分析執(zhí)行計(jì)劃,從而知道MySQL是如何處理你的SQL語(yǔ)句的,分析你的查詢語(yǔ)句或是表結(jié)構(gòu)的性能瓶頸,需要的朋友可以參考下
    2022-09-09
  • Mac 安裝 mysqlclient過(guò)程解析

    Mac 安裝 mysqlclient過(guò)程解析

    這篇文章主要介紹了Mac 安裝 mysqlclient過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Mysql數(shù)據(jù)庫(kù)中的redo?log?寫入策略和binlog?寫入策略

    Mysql數(shù)據(jù)庫(kù)中的redo?log?寫入策略和binlog?寫入策略

    這篇文章主要介紹了Mysql?redo?log?寫入策略和binlog?寫入策略,通過(guò)本文學(xué)習(xí)可以了解redo?log的寫入策略是由InnoDB提供了innodb_flush_log_at_trx_commit參數(shù),binlog的寫入策略,write?和fsync的時(shí)機(jī),是由參數(shù)sync_binlog控制的,需要的朋友可以參考下
    2022-04-04
  • Mysql系統(tǒng)變量與狀態(tài)變量詳細(xì)介紹

    Mysql系統(tǒng)變量與狀態(tài)變量詳細(xì)介紹

    這篇文章主要介紹了Mysql系統(tǒng)變量與狀態(tài)變量詳細(xì)介紹,能夠在程序運(yùn)行過(guò)程中影響Mysql程序行為的變量稱之為系統(tǒng)變量,想了解更多相關(guān)內(nèi)容的小伙伴可以參考下面文章內(nèi)容
    2022-09-09
  • MySQL索引下推(ICP)的簡(jiǎn)單理解與示例

    MySQL索引下推(ICP)的簡(jiǎn)單理解與示例

    大家應(yīng)該都知道索引下推可以提高查詢效率,所以下面這篇文章主要給大家介紹了關(guān)于MySQL索引下推(ICP)的簡(jiǎn)單理解與示例的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • MySQL?去重實(shí)例操作詳解

    MySQL?去重實(shí)例操作詳解

    這篇文章主要介紹了MySQL?去重實(shí)例操作詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07
  • mysql數(shù)據(jù)損壞,如何通過(guò)ibd和frm文件批量恢復(fù)數(shù)據(jù)庫(kù)數(shù)據(jù)

    mysql數(shù)據(jù)損壞,如何通過(guò)ibd和frm文件批量恢復(fù)數(shù)據(jù)庫(kù)數(shù)據(jù)

    這篇文章主要介紹了mysql數(shù)據(jù)損壞,如何通過(guò)ibd和frm文件批量恢復(fù)數(shù)據(jù)庫(kù)數(shù)據(jù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Mysql 5.6添加修改用戶名和密碼的方法

    Mysql 5.6添加修改用戶名和密碼的方法

    這篇文章主要介紹了Mysql 5.6添加修改用戶名和密碼的方法,需要的朋友可以參考下
    2017-07-07

最新評(píng)論