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

MySQL讀取my.cnf的順序問題詳情

 更新時間:2021年09月01日 10:37:16   作者:gaopengtttt  
這篇文章主要介紹MySQL讀取my.cnf的順序問題,以mysql.server、mysqld_safe及mysqld和my_print_defaults讀取my.cnf順序展開文章介紹主題,感興趣的話大家一起來學(xué)習(xí)吧

MySQL讀取my.cnf的順序

一、mysql.server啟動方式

basedir=/opt/mysql/mysql3315
datadir=/opt/mysql/mysql3315/data

進(jìn)行查找,在解析參數(shù)文件的時候會帶入 -e進(jìn)行解析

/opt/mysql/mysql3315/bin/my_print_defaults -e /opt/mysql/mysql3315/my.cnf mysqld server mysql_server mysql.server

也就是—defaults-extra-file,獲取的目錄包含basedir、datadir、pid-file,但是pid-file參數(shù)可能不存在

使用如下

if test -z "$mysqld_pid_file_path"
then
  mysqld_pid_file_path=$datadir/`hostname`.pid
else
  case "$mysqld_pid_file_path" in
    /* ) ;;
    * )  mysqld_pid_file_path="$datadir/$mysqld_pid_file_path" ;;
  esac
fi

換算出位置和文件名。最終調(diào)入的參數(shù)如下:

/opt/mysql/mysql3315/bin/mysqld_safe --datadir=/opt/mysql/mysql3315/data/ --pid-file=/opt/mysql/mysql3315/data//mgr4.pid

二、mysqld_safe啟動方式

  • 通過mysqld_safe位置進(jìn)行反推,反推能夠得到basedir目錄,并且會設(shè)置MYSQL_HOME為basedir
  • 然后解析參數(shù)文件需要獲取的參數(shù)比較多,不進(jìn)行列舉
/opt/mysql/mysql3315/bin/my_print_defaults mysqld server mysql_server mysql.server

注意:這里沒有設(shè)置-e因為設(shè)置了MYSQL_HOME目錄會自行解析其下面的參數(shù)文件,解析位置見最后。

  • 啟動mysqld
nohup /opt/mysql/mysql3315/bin/mysqld --basedir=/opt/mysql/mysql3315 --datadir=/opt/mysql/mysql3315/data 
--plugin-dir=/opt/mysql/mysql3315/lib/plugin --user=mysql 
--log-error=/opt/mysql/mysql3315/logs/mysql3315.err --pid-file=/opt/mysql/mysql3315/data//mgr4.pid 
--socket=/opt/mysql/mysql3315/data/mysql3315.sock --port=3315

注意:有open_files_limits的情況下這里會帶上open_file_limits而覆蓋mysqld使用的參數(shù)文件中的配置

  • 循環(huán)監(jiān)控pid文件

啟動后會進(jìn)行如下的循環(huán),會通過eval命令堵塞在mysqld的調(diào)用,如果進(jìn)程退出則返回,進(jìn)行循環(huán)判斷,最后會根據(jù)pid是否存在判斷是否是正常的關(guān)閉mysqld判斷方式是kill -0 pid進(jìn)行判斷mysqld進(jìn)程是否存在。不存在則拉起來。

while true
do
  echo 1
  start_time=`date +%M%S`
  eval_log_error "$cmd"
  • 關(guān)于加載jemalloc
if [ -n "$mysqld_ld_library_path" ]; then
  new_text="$mysqld_ld_library_path"
  [ -n "$LD_LIBRARY_PATH" ] && new_text="$new_text:$LD_LIBRARY_PATH"
  text="${text}LD_LIBRARY_PATH="`shell_quote_string "$new_text"`' '
fi

  • 自己使用mysqld_safe 啟動
```
/home/work/ssd1/mysql/install/bin/mysqld_safe —defaults-file=/home/work/ssd1/mysql/etc/3307/my.cnf —socket=/home/work/ssd1/mysql/sock/3307/mysql.sock —datadir=/home/work/ssd1/mysql/data/3307 —user=mysql &

如果這樣啟動my_print_defaults 會帶上 —defaults-file

/opt/mysql/mysql3320/install/bin/my_print_defaults —defaults-file=/home/work/ssd1/mysql/etc/3307/my.cnf —loose-verbose mysqld server

三、關(guān)于mysqld和my_print_defaults讀取my.cnf順序

實際上這個函數(shù)init_default_directories函數(shù)中
其中順序為:

<—defaults-file最先讀取,并且為只讀取這個配置文件,并且為第一個選項>

  • /etc/my.cnf
  • /etc/mysql/my.cnf
  • DEFAULT_SYSCONFDIR 編譯時配置下的my.cnf
  • MYSQL_HOME 設(shè)置。mysqld_safe會設(shè)置MYSQL_HOME,就會讀取下面的my.cnf。
  • —defaults-extra-file的設(shè)置,my_print_defaults和mysqld均由這個設(shè)置。
  • ~/.my.cnf
  • 從解析的順序來看最后會加載命令行參數(shù)。

解析完成后全部參數(shù)羅列,多個同名參數(shù)以最后一個生效

到此這篇關(guān)于MySQL讀取my.cnf的順序問題詳情的文章就介紹到這了,更多相關(guān)MySQL讀取my.cnf的順序內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL刪除表數(shù)據(jù)、清空表命令詳解(truncate、drop、delete區(qū)別)

    MySQL刪除表數(shù)據(jù)、清空表命令詳解(truncate、drop、delete區(qū)別)

    介紹了MySQL中清空或刪除表數(shù)據(jù)的三種方法:truncate、delete和drop,以及它們的特點、使用場景和注意事項,Truncate用于快速刪除表中所有數(shù)據(jù)并釋放空間,但不保留表結(jié)構(gòu);delete用于刪除表中特定行或所有數(shù)據(jù),保留表結(jié)構(gòu)且操作可回滾
    2024-10-10
  • MySQL數(shù)據(jù)誤刪除的快速解決方法(MySQL閃回工具)

    MySQL數(shù)據(jù)誤刪除的快速解決方法(MySQL閃回工具)

    Binlog2sql是一個Python開發(fā)開源的MySQL Binlog解析工具,能夠?qū)inlog解析為原始的SQL,也支持將Binlog解析為回滾的SQL,去除主鍵的INSERT SQL,是DBA和運維人員數(shù)據(jù)恢復(fù)好幫手,下面小編通過教程給大介紹MySQL數(shù)據(jù)誤刪除的快速解決方法,一起看看吧
    2019-10-10
  • 詳解mysql解壓縮版安裝步驟

    詳解mysql解壓縮版安裝步驟

    這篇文章主要介紹了mysql解壓縮版安裝步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • mysql報1292?Incorrect?datetime?value錯誤的解決方法

    mysql報1292?Incorrect?datetime?value錯誤的解決方法

    這篇文章主要給大家介紹如何解決mysql報1292?Incorrect?datetime?value錯誤,文中有詳細(xì)的解決方案,具有一定的參考價值,需要的同學(xué)可以參考閱讀下本文
    2023-07-07
  • MySQL數(shù)據(jù)庫操作DML?插入數(shù)據(jù),刪除數(shù)據(jù),更新數(shù)據(jù)

    MySQL數(shù)據(jù)庫操作DML?插入數(shù)據(jù),刪除數(shù)據(jù),更新數(shù)據(jù)

    這篇文章主要介紹了MySQL數(shù)據(jù)庫操作DML插入數(shù)據(jù),刪除數(shù)據(jù),更新數(shù)據(jù),DML是指數(shù)據(jù)操作語言,英文全稱是Data?Manipulation?Language,用來對數(shù)據(jù)庫中表的數(shù)據(jù)記錄進(jìn)行更新
    2022-07-07
  • MySQL中的ibdata1用法解讀

    MySQL中的ibdata1用法解讀

    這篇文章主要介紹了MySQL中的ibdata1用法解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • mysql創(chuàng)建索引的3種方法實例

    mysql創(chuàng)建索引的3種方法實例

    大家應(yīng)該都知道索引的建立對于MySQL數(shù)據(jù)庫的高效運行是很重要的,索引可以大大提升MySQL的檢索速度,下面這篇文章主要給大家介紹了關(guān)于mysql創(chuàng)建索引的3種方法,需要的朋友可以參考下
    2023-02-02
  • MySQL復(fù)制表的三種方式(小結(jié))

    MySQL復(fù)制表的三種方式(小結(jié))

    這篇文章主要介紹了MySQL復(fù)制表的三種方式(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • mysql 8.0.12 解壓版安裝教程 個人親測!

    mysql 8.0.12 解壓版安裝教程 個人親測!

    這篇文章主要為大家詳細(xì)介紹了mysql 8.0.12 解壓版安裝教程,步驟簡單,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • 關(guān)于com.mysql.jdbc.Driver與com.mysql.cj.jdbc.Driver的區(qū)別

    關(guān)于com.mysql.jdbc.Driver與com.mysql.cj.jdbc.Driver的區(qū)別

    這篇文章主要介紹了關(guān)于com.mysql.jdbc.Driver與com.mysql.cj.jdbc.Driver的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08

最新評論