激情五月天婷婷,亚洲愉拍一区二区三区,日韩视频一区,a√天堂中文官网8

<ul id="buwfs"><strike id="buwfs"><strong id="buwfs"></strong></strike></ul>
    <output id="buwfs"></output>
  • <dfn id="buwfs"><source id="buwfs"></source></dfn>
      <dfn id="buwfs"><td id="buwfs"></td></dfn>
      <div id="buwfs"><small id="buwfs"></small></div>
      <dfn id="buwfs"><source id="buwfs"></source></dfn>
      1. <dfn id="buwfs"><td id="buwfs"></td></dfn>
        始創(chuàng)于2000年 股票代碼:831685
        咨詢熱線:0371-60135900 注冊有禮 登錄
        • 掛牌上市企業(yè)
        • 60秒人工響應(yīng)
        • 99.99%連通率
        • 7*24h人工
        • 故障100倍補(bǔ)償
        全部產(chǎn)品
        您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

        MySQL配置文件講解

        發(fā)布時(shí)間:  2012/8/10 17:47:28

        MySQL配置文件

        MySQL發(fā)布的最新產(chǎn)品實(shí)際上超出了Red Hat Enterprise Linux所攜帶的版本。但是,穩(wěn)定性和開放源代碼可是很重要的因素,因此在操作系統(tǒng)上使用較早MySQL版本是有道理的。

        有許多可以采用的配置文件,它們都被包含在mysql-server PRM程序中。還有一個(gè)默認(rèn)的配置文件被包含在mysql PRM程序包中。

        -
         
        配置MySQL服務(wù)器是一個(gè)豐富而復(fù)雜的工作。在本文中,我只能膚淺的說一下各種選項(xiàng)。可以使用的MySQL配置文件共有5個(gè)。最后4個(gè)位于/usr/share/doc/mysql-server-*/目錄中。

        ·/etc/my.cnf是默認(rèn)的MySQL配置文件。應(yīng)該對這個(gè)文件配置修改。它是為學(xué)習(xí)目的而設(shè)計(jì)的。

        ·my-small.cnf是為了小型數(shù)據(jù)庫而設(shè)計(jì)的。不應(yīng)該把這個(gè)模型用于含有一些常用項(xiàng)目的數(shù)據(jù)庫。

        ·my-medium.cnf是為中等規(guī)模的數(shù)據(jù)庫而設(shè)計(jì)的。如果你正在企業(yè)中使用RHEL,可能會(huì)比這個(gè)操作系統(tǒng)的最小RAM需求(256MB)明顯多得多的物理內(nèi)存。由此可見,如果有那么多RAM內(nèi)存可以使用,自然可以在同一臺機(jī)器上運(yùn)行其它服務(wù)。

        ·my-large.cnf是為專用于一個(gè)SQL數(shù)據(jù)庫的計(jì)算機(jī)而設(shè)計(jì)的。由于它可以為該數(shù)據(jù)庫使用多達(dá)512MB的內(nèi)存,所以在這種類型的系統(tǒng)上將需要至少1GB的RAM,以便它能夠同時(shí)處理操作系統(tǒng)與數(shù)據(jù)庫應(yīng)用程序。

        ·my-huge.cnf是為企業(yè)中的數(shù)據(jù)庫而設(shè)計(jì)的。這樣的數(shù)據(jù)庫要求專用服務(wù)器和1GB或1GB以上的RAM。

        這些選擇高度依賴于內(nèi)存的數(shù)量、計(jì)算機(jī)的運(yùn)算速度、數(shù)據(jù)庫的細(xì)節(jié)大小、訪問數(shù)據(jù)庫的用戶數(shù)量以及在數(shù)據(jù)庫中裝入并訪問數(shù)據(jù)的用戶數(shù)量。隨著數(shù)據(jù)庫和用戶的不斷增加,數(shù)據(jù)庫的性能可能會(huì)發(fā)生變化。

        我將逐個(gè)的說明這些配置文件。如果用戶決定使用my-*.cnf文件之一,將首先需要把這個(gè)文件復(fù)制到/etc/my.cnf文件上。

        由于這些原因,用戶應(yīng)該仔細(xì)觀察數(shù)據(jù)庫系統(tǒng)的性能。如果發(fā)現(xiàn)問題,可能需要增加更多的RAM,或者把數(shù)據(jù)庫遷移到一個(gè)含有附加資源(比如多個(gè)CPU)的系統(tǒng)上。

        提示:數(shù)據(jù)庫變得非常大。把一個(gè)SQL數(shù)據(jù)庫目錄配置在一個(gè)專用分區(qū)上可能更有道理。雖然一個(gè)不斷增長的數(shù)據(jù)庫可能會(huì)占滿整個(gè)分區(qū),但它至少不會(huì)吞掉RHEL運(yùn)行所必需的磁盤空間。

        /etc/my.cnf文件

        默認(rèn)是/etc/my.cnf文件。它包含6條命令,并且這6條命令被組織在3個(gè)配置段中。這些配置段與Samba配置文件中的配置段相似,并且含有功能組名稱和相關(guān)的命令。本文將逐行的說明這個(gè)文件的默認(rèn)版本。如果用戶進(jìn)行了任何修改,將需要確保MySQL啟動(dòng)腳本(即/etc/rc.d/init.d/mysqld)中的命令一致。

        [mysqld]

        在這個(gè)配置段之內(nèi),將會(huì)看到與MySQL守護(hù)進(jìn)程相關(guān)的命令。

        datadir=/var/lib/mysql

        MySQL服務(wù)器把數(shù)據(jù)庫存儲(chǔ)在由datadir變量所定義的目錄中。

        Socket=/var/lib/mysql/mysql.sock

        MySQL套接字把數(shù)據(jù)庫程序局部的或通過網(wǎng)絡(luò)連接到MySQL客戶。

        提示:MySQL被配置成使用InnoDB存儲(chǔ)器引擎。如果用戶在自己的系統(tǒng)上還沒有一個(gè)InnoDB數(shù)據(jù)庫,將需要給[mysqld]配置段添加skip-innodb語句。

        [mysql.server]

        在這個(gè)配置段之內(nèi),將會(huì)看到MySQL服務(wù)器守護(hù)進(jìn)程有關(guān)的命令。這個(gè)配置段的較早期版本被命名為[mysql_server]。如果使用MySQL4.X或MySQL4.X以上版本,將必須把這個(gè)配置段標(biāo)題改成[mysql_server]。當(dāng)啟動(dòng)MySQL服務(wù)時(shí),它使用這個(gè)配置段中的選項(xiàng)。

        user=mysql

        與MySQL服務(wù)相關(guān)聯(lián)的標(biāo)準(zhǔn)用戶名是mysql。它應(yīng)該是/etc/passwd文件的一部分;如果在這個(gè)文件中沒有發(fā)現(xiàn)它,用戶可能還沒有安裝Red Hat Enterprise Linux mysql-server RPM程序包。

        basedir=/var/lib

        這表示MySQL數(shù)據(jù)庫的頂級目錄。它充當(dāng)MySQL系統(tǒng)上的一個(gè)根目錄;這個(gè)數(shù)據(jù)庫中的其它目錄都是相對于這個(gè)目錄。

        [safe_mysqld]

        這個(gè)配置段包含MySQL啟動(dòng)腳本所引用的命令。如果使用MySQL4.X或4.X以上版本,必須把這個(gè)配置段改成[mysqld_safe]。

        err-log=/var/log/mysqld.log

        這是MySQL所關(guān)聯(lián)的錯(cuò)誤被發(fā)送到的這個(gè)文件。如果使用MySQL4.X或4.X以上版本,必須使用log-error指令替換這條命令。

        pid-file=/var/run/mysqld/mysqld.pid

        最后,pid-file指令定義MySQL服務(wù)器在運(yùn)作期間的進(jìn)程標(biāo)識符(PID)。如果MySQL服務(wù)器當(dāng)前沒有運(yùn)行,這個(gè)文件應(yīng)該不存在。

        提示:用戶可以配置與用戶特定相關(guān)的MySQL配置文件;為此,只需給指定用戶主目錄中的.my.cnf隱含文件添加所選的配置命令即可。

        my-samll-cnf

        在本文中,將說明my-small-cnf配置文本中的所有命令。當(dāng)回顧其它MySQL樣本配置文件時(shí),將參考本文所解釋的各條命令和指令的含義。先從下面這個(gè)配置段開始分析該文件中的有效命令和指令:

        [client]

        這個(gè)配置把指令傳遞給與MySQL服務(wù)器相關(guān)的客戶。

        port=3306

        MySQL所相關(guān)的標(biāo)準(zhǔn)TCP/IP端口是3306。如果需要修改這個(gè)端口號(可以增強(qiáng)安全),必須確保用于MySQL客戶與服務(wù)器的所有相應(yīng)配置文件中均修改這個(gè)號。

        socket=/var/lib/mysql/mysql.sock

        正像默認(rèn)的/etc/my.cnf文件中所定義的那樣,這是控制MySQL客戶與服務(wù)器間通信的標(biāo)準(zhǔn)套接字文件。

        [mysqld]

        當(dāng)啟動(dòng)MySQL服務(wù)器時(shí),它由[mysqld]配置段中所定義的命令來控制。

        port=3306

        socket=/var/lib/mysql/mysql.sock

        當(dāng)然,與同一個(gè)MySQL數(shù)據(jù)庫相關(guān)的客戶與服務(wù)器需要使用相同的TCP/IP端口和套接字。

        skip-locking

        多個(gè)客戶可能會(huì)訪問同一個(gè)數(shù)據(jù)庫,因此這防止外部客戶鎖定MySQL服務(wù)器。這個(gè)skip-locking命令是MySQL4.X或4.X以上版本中的skip-external-locking命令。

        一般來說,如果正在使用MySQL4.X或4.X上以版本,這個(gè)set-variable指令沒有必要帶有這個(gè)列表中的這些命令。

        set-variable=key_buffer=16k

        這個(gè)緩沖區(qū)確實(shí)很。蝗绻粋(gè)數(shù)據(jù)庫在一個(gè)文本文件中包含不止幾百行數(shù)據(jù),它將會(huì)超載這個(gè)緩沖區(qū)的容量。這個(gè)數(shù)據(jù)庫可能不會(huì)超載一個(gè)文本文件地址簿的容量。如果這不只是一個(gè)供個(gè)人使用的數(shù)據(jù)庫,這個(gè)限額很快就會(huì)被達(dá)到。假使那樣的話,可能需要考慮與其它配置文件之一相關(guān)的那些限額。

        set-variable=max_allowed_packet=1M

        當(dāng)然,與一個(gè)數(shù)據(jù)庫相關(guān)的信息會(huì)增加到超出實(shí)際數(shù)據(jù)。在默認(rèn)的情況下,如果該信息在一個(gè)服務(wù)器上超過1MB以上,MySQL將會(huì)產(chǎn)生一條錯(cuò)誤信息。

        set-variable=thread_stack=64k

        這條指令限定用于每個(gè)數(shù)據(jù)庫線程的棧大小。默認(rèn)設(shè)置足以滿足大多數(shù)應(yīng)用。

        set-variable=table_cache=4

        用戶可以限定一個(gè)數(shù)據(jù)庫中打開表的數(shù)量;越小的限額(默認(rèn)值是64)適合越小規(guī)模的數(shù)據(jù)庫。

        set-variable=sort_buffer=64k

        在處理一個(gè)數(shù)據(jù)庫時(shí),用戶可能需要內(nèi)存中附加的緩沖區(qū)空間。

        set-variable=net_buffer_length=2k

        正如net_buffer_length指令所定義的,MySQL服務(wù)器還給傳入的請求保留了空間。

        server-id=1

        一般來說,如果有一個(gè)MySQL主服務(wù)器,應(yīng)該把它的server-id設(shè)置成1;應(yīng)該把MySQL從屬服務(wù)器的server-id設(shè)置成2;

        [mysqldump]

        用戶可以在不同類型的SQL數(shù)據(jù)庫之間傳輸數(shù)據(jù),這由[mysqldump]配置段中的命令來控制。

        quick

        quick選項(xiàng)支持較大數(shù)據(jù)庫的轉(zhuǎn)儲(chǔ)。

        set-variable=max_allowed_packet=16M

        當(dāng)然,用來傳輸數(shù)據(jù)庫表到其它數(shù)據(jù)庫的max_allowed_packet大于客戶與服務(wù)器之間的簡單通信所使用的信息包。

        [mysql]

        no-auto-rehash

        這個(gè)配置段設(shè)置啟動(dòng)MySQL服務(wù)的條件;在這種情況下,no-auto-rehash確保這個(gè)服務(wù)啟動(dòng)得比較快。

        [isamchk]

        [myisamchk]

        像SQL這樣的關(guān)系數(shù)據(jù)庫用所謂的Indexed Sequential Access Method(索引順序存取方法,簡稱ISAM)來處理。這兩個(gè)配置段中的命令是相同的;這些命令與檢查并修復(fù)數(shù)據(jù)庫表的同名命令有關(guān)。

        set-variable=key_buffer=8M

        set-variable=sort_buffer=8M

        在前面談及MySQL服務(wù)器時(shí),用戶己經(jīng)見過這些變量。它們在這里都比較大,以便支持?jǐn)?shù)據(jù)庫的較快速檢查與修復(fù)。

        [mysqlhotcopy]

        interactive-timeout

        正如[mysqlhotcopy]配置段所指定的,在一個(gè)數(shù)據(jù)庫復(fù)制操作期間,連接會(huì)掛起。在默認(rèn)情況下,interactive-timeout變量把一個(gè)數(shù)據(jù)傳輸?shù)淖畲髸r(shí)間量設(shè)置為28800秒(8個(gè)小時(shí))。

        my-medium.cnf文件

        與中等數(shù)據(jù)庫相關(guān)的MySQL配置文件含有和my-small-cnf配置文件中一樣的有效配置段。在[mysqld]配置段中,下面這些命令支持較大規(guī)模的服務(wù)器數(shù)據(jù)庫:

        set-variable=key_buffer=16M

        set-variable=table_cache=64

        set-variable=sort_buffer=512K

        set-variable=net_buffer_length=8K

        log-bin

        一般來說,這個(gè)配置段中的命令支持服務(wù)器上的較大高速緩存與緩沖區(qū)長度。應(yīng)該看到兩條新命令。

        set-variable=myisam_sort_buffer_size=8M

        log-bin

        myisam_sort_buffer_size命令允許MySQL索引數(shù)據(jù)庫,第二條命令支持二進(jìn)制日志記錄方法。

        [isamchk]

        [myisamchk]

        當(dāng)然,這兩個(gè)配置段中的緩沖區(qū)比用于數(shù)據(jù)庫傳輸?shù)木彌_區(qū)大,這個(gè)文件包含下面這些命令;它們發(fā)送消息到服務(wù)器和接收來自服務(wù)器的消息。

        set-variable=read_buffer=2M

        set-variable=write_buffer=2M

        my-large.cnf文件

        與較大型數(shù)據(jù)庫相關(guān)的MySQL配置文件含有和my-samll-cnf配置文件中一樣的有效配置段。在本文中,將比較my-large-cnf與my-medium-cnf樣本文件中的各條命令。在[mysqld]配置段中,下面這些命令支持較大型的服務(wù)器數(shù)據(jù)庫:

        set-variable=key_buffer=256M

        set-variable=table_cache=256

        set-variable=sort_buffer=1M

        set-variable=myisam_sort_buffer_size=64M

        set-variable=net_buffer_length=8K

        這個(gè)配置段中有3條附加的命令。record_buffer命令保存對一個(gè)數(shù)據(jù)庫中不同表的掃描結(jié)果。thread_cache命令對多請求有用;空閑線程被高速緩存起來,進(jìn)而允許新的搜索操作采用己有的線程。只要這防止搜索操作啟動(dòng)新的服務(wù)器進(jìn)程,這就能減輕系統(tǒng)上的負(fù)荷。

        set-variable=record_buffer=1M

        set-variable=thread_cache=8

        set-variable=thread_concurrency=8

        thread_concurrency變量限定同時(shí)運(yùn)行的線程數(shù)量。my-large.cnf樣本文件建議用戶應(yīng)該把這個(gè)數(shù)量限定于本計(jì)算機(jī)上CPU數(shù)量的兩倍;這個(gè)特定設(shè)置相當(dāng)于4個(gè)CPU。

        my-huge.cnf文件

        my-huge.cnf文件含有和my-large.cnf配置文件中一樣的命令。當(dāng)然,分配給大多數(shù)指令的值比較大并適合較大型的數(shù)據(jù)庫。

        正如wWw.mysql.com站點(diǎn)上所描述的,擁有大量數(shù)據(jù)庫的組織,比如:google、 Sabre和NASA都采用MySQL。雖然我們猜測這些公司所使用的命令不同于用戶在my-huge.cnf文件中所看到的命令,但這至少讓用戶對 MySQL企業(yè)級數(shù)據(jù)庫有一個(gè)概念。


        本文出自:億恩科技【mszdt.com】

        服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

      2. 您可能在找
      3. 億恩北京公司:
      4. 經(jīng)營性ICP/ISP證:京B2-20150015
      5. 億恩鄭州公司:
      6. 經(jīng)營性ICP/ISP/IDC證:豫B1.B2-20060070
      7. 億恩南昌公司:
      8. 經(jīng)營性ICP/ISP證:贛B2-20080012
      9. 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
      10. 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
      11. 專注服務(wù)器托管17年
        掃掃關(guān)注-微信公眾號
        0371-60135900
        Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號
          0
         
         
         
         

        0371-60135900
        7*24小時(shí)客服服務(wù)熱線