?? manual_installing.html
字號:
<h2><a NAME="Which_version" HREF="manual_toc.html#Which_version">4.3 使用MySQL哪個(gè)版本</a></h2>
<p>首先要作出決策,你是否想要使用最新的開發(fā)版本或最終的穩(wěn)定版本:
<ul>
<li>通常, 如果你是第一次開始使用<strong>MySQL</strong>或嘗試移植它到一些還沒有二進(jìn)制分發(fā)系統(tǒng)上,我們推薦使用開發(fā)版本(當(dāng)前
3.22.x)。這是因?yàn)橥ǔT陂_發(fā)版本中沒用真正嚴(yán)重的錯(cuò)誤,并且你能容易用你的機(jī)器上的<code>crash-me</code>和基準(zhǔn)測試套件來測試它。見<a href="manual_Performance.html#Benchmarks">10.8 使用你自己的基準(zhǔn)測試</a>。</li>
<li>否則,如果你正在運(yùn)行一個(gè)老的系統(tǒng)并且想要升級,但是又不想要用3.22冒險(xiǎn),你應(yīng)該升級到3.21.33。我們已經(jīng)試著僅修復(fù)致命錯(cuò)誤,并且對那個(gè)版本進(jìn)行更小的相對安全的改動(dòng)。
</li>
</ul>
<p>要做的第二項(xiàng)決策是你是否想要使用源代碼分發(fā)或二進(jìn)制分發(fā):
<ul>
<li>如果你想在一個(gè)已經(jīng)存在一個(gè)最新二進(jìn)制分發(fā)的平臺上運(yùn)行<strong>MySQL</strong>,就用它。通常,這比一個(gè)源代碼分發(fā)更容易安裝。
</li>
<li>如果你想要閱讀(或修改)構(gòu)成<strong>MySQL</strong>的C和C++代碼,你應(yīng)該拿到源代碼分發(fā)。源代碼總是最終的手冊。源代碼分發(fā)也比二進(jìn)制的分發(fā)包含更多的測試和實(shí)例。
</li>
</ul>
<p><strong>MySQL</strong>的命名機(jī)制使用由3個(gè)數(shù)字和一個(gè)后綴組成的版本號。例如,一個(gè)像<code>mysql-3.21.17-beta</code>的版本號這樣解釋:
<ul>
<li>第1數(shù)字(<code>3</code>)描述文件格式。所有版本3的發(fā)行都有相同的文件格式。當(dāng)一個(gè)版本4出現(xiàn)時(shí),每個(gè)數(shù)據(jù)庫表都將必須轉(zhuǎn)換到新格式(當(dāng)然,為此有一個(gè)很不錯(cuò)的工具)。
</li>
<li>第2數(shù)字(<code>21</code>)是發(fā)行級別。通常有2種選擇。一個(gè)是發(fā)部/穩(wěn)定分支(當(dāng)前<code>為21</code>)而其它是開發(fā)分支(當(dāng)前<code>22</code>)。通常兩者都是穩(wěn)定的,但是開發(fā)版本可能有毛病,新功能缺乏文檔或可能在某些系統(tǒng)上編譯失敗。
</li>
<li>第3個(gè)數(shù)字(<code>17</code>)是在此發(fā)行級別的版本號,這隨每個(gè)新分發(fā)遞增。通常你需要你已經(jīng)選擇的發(fā)行(release)的最新版本(version)。
</li>
<li>后綴(<code>beta</code>)顯示發(fā)行的穩(wěn)定性級別。可能的后綴有: <ul>
<li><code>alpha</code> 表明發(fā)行包含大量未被100%測試的新代碼。已知的錯(cuò)誤(通常沒有)應(yīng)該在新聞小節(jié)被記錄。見<a HREF="manual_News.html#News">D MySQL 變遷的歷史記錄</a>。在大多數(shù) alpha
版本也有新的命令和擴(kuò)展。 </li>
<li><code>beta</code>
意味著所有的新代碼被測試了,沒有增加重要的新特征,應(yīng)該沒有已知的錯(cuò)誤。
</li>
<li><code>gamma</code> 是一個(gè)發(fā)行了一段時(shí)間的beta版本,看起來應(yīng)該運(yùn)行正常。這就是很多其他公司稱為一個(gè)發(fā)布的東西。
</li>
<li>如果沒有后綴,這意味著該版本已經(jīng)在很多地方運(yùn)行一段時(shí)間了,而且沒有非平臺特定的錯(cuò)誤報(bào)告。這就是我們稱為一個(gè)穩(wěn)定版本的東西。
</li>
</ul>
</li>
</ul>
<p><strong>MySQL</strong>所有版本都經(jīng)過我們的標(biāo)準(zhǔn)測試和基準(zhǔn)測試運(yùn)行,以保證他們可相當(dāng)安全地使用。因?yàn)闃?biāo)準(zhǔn)測試不斷擴(kuò)充以檢測以前發(fā)現(xiàn)的錯(cuò)誤,測試套件一直在改進(jìn)之中。
</p>
<p>注意,所有版本都至少已經(jīng)用下列套件進(jìn)行了測試:
<dl COMPACT="manual_News.html#News">
<dt>一個(gè)內(nèi)部測試套件</dt>
<dd>這是一個(gè)客戶生產(chǎn)系統(tǒng)的一部分。它可能有很多幾百個(gè)兆字節(jié)數(shù)據(jù)的數(shù)據(jù)庫表。
</dd>
<dt><strong>MySQL</strong>基準(zhǔn)測試套件</dt>
<dd>它運(yùn)行一定范圍的常用查詢。它也是一個(gè)測試,檢測最新的優(yōu)化處理是否真的使代碼更快。見<a HREF="manual_Performance.html#Benchmarks">10.8 使用你自己的基準(zhǔn)測試</a>。 </dd>
<dt><code>crash-me</code>測試</dt>
<dd>這嘗試決定數(shù)據(jù)庫支持什么功能和它的能力與限制是什么。見<a HREF="manual_Performance.html#Benchmarks">10.8 使用你的自己基準(zhǔn)測試</a>。 </dd>
</dl>
<p>其他測試是在內(nèi)部的生產(chǎn)環(huán)境中使用最新<strong>MySQL</strong>版本,至少在一臺機(jī)器上。我們有超過100GB的數(shù)據(jù)可用使用。
</p>
<h2><a NAME="Many_versions" HREF="manual_toc.html#Many_versions">4.4
怎樣和何時(shí)發(fā)布更新版本</a></h2>
<p>在TcX,<strong>MySQL</strong>進(jìn)展的相當(dāng)快,并且我們想要與其它<strong>MySQL</strong>用戶分享它。當(dāng)我們有一個(gè)看來其它人似乎需要的非常有用的功能時(shí),我們就試著制作一個(gè)發(fā)行版本。
</p>
<p>我們也嘗試幫助那些需要很容易實(shí)現(xiàn)的功能的用戶,我們也關(guān)注我們授權(quán)的用戶想要什么,我們更特別關(guān)注我們的擴(kuò)展電子郵件支持的客戶想要什么,并且盡力幫助他們。
</p>
<p>沒有人一定要下載一個(gè)新版本,新聞小節(jié)中將告訴你新版本是否有一些你確實(shí)想要的東西。見<a HREF="manual_News.html#News">D MySQL 變遷的歷史記錄</a>。 </p>
<p>當(dāng)更新<strong>MySQL</strong>時(shí),我們使用下列方針:
<ul>
<li>對每個(gè)小的改進(jìn),在版本字符串的最后數(shù)字增加1。當(dāng)有主要的新功能或與先前版本比有較小不兼容性時(shí),在版本字符串的第2數(shù)字增加1。當(dāng)文件格式變化時(shí),第1數(shù)字加1。
</li>
<li>穩(wěn)定的測試過的版本每年準(zhǔn)備出現(xiàn)1-2次,但是如果發(fā)現(xiàn)小錯(cuò)誤,只有錯(cuò)誤修復(fù)的一個(gè)版本將被發(fā)行。
</li>
<li>工作版本準(zhǔn)備每1-8周出現(xiàn)一次。 </li>
<li>對一些平臺的二進(jìn)制分發(fā),主要版本由我們制作。其他人可以為其他系統(tǒng)制作二進(jìn)制分發(fā),但是可能不多見。
</li>
<li>一旦我們找到并修復(fù)了小錯(cuò)誤,我們通常使用戶可以得到補(bǔ)丁。 </li>
<li>對非緊急但煩人的錯(cuò)誤,如果他們被發(fā)給我們,我們將使用戶可以得到補(bǔ)丁,否則我們將集中許多錯(cuò)誤到一個(gè)更大的補(bǔ)丁中。
</li>
<li>在任何情況下,如果在一個(gè)發(fā)行中有一個(gè)致命錯(cuò)誤,我們將盡快制作一個(gè)新版本。我們想其他公司也這樣做。:)
</li>
</ul>
<p>當(dāng)前的穩(wěn)定版本是3.22;我們已經(jīng)轉(zhuǎn)移到3.23的積極開發(fā)中。在穩(wěn)定版本中,錯(cuò)誤仍將被修復(fù)。我們不相信一個(gè)完全凍結(jié),因?yàn)檫@也留下的錯(cuò)誤修復(fù)和“必須做”的事情。“某種程度的凍結(jié)”意味著我們可以增加小東西,它“將幾乎肯定不影響已經(jīng)能工作的任何東西”。
</p>
<h2><a NAME="Installation_layouts" HREF="manual_toc.html#Installation_layouts">4.5
安裝布局</a></h2>
<p>這節(jié)描述安裝二進(jìn)制代碼和源代碼分發(fā)時(shí)創(chuàng)建的缺省目錄布局。 </p>
<p>二進(jìn)制分發(fā)通過在你選擇的安裝地點(diǎn)(典型的<tt>“/usr/local/mysql”</tt>)解壓縮來安裝,并且在該處創(chuàng)建下列目錄:
</p>
<table BORDER="1" WIDTH="100%" NOSAVE="#101090" class="p3">
<tr>
<td><strong>目錄</strong> </td>
<td><strong>目錄的內(nèi)容</strong> </td>
</tr>
<tr>
<td><tt>“bin”</tt> </td>
<td>客戶程序和<code>mysqld</code>服務(wù)器</td>
</tr>
<tr>
<td><tt>“data”</tt> </td>
<td>日志文件, 數(shù)據(jù)庫</td>
</tr>
<tr>
<td><tt>“include”</tt> </td>
<td>包含(頭)文件</td>
</tr>
<tr>
<td><tt>“l(fā)ib”</tt> </td>
<td>庫文件</td>
</tr>
<tr>
<td><tt>“scripts”</tt> </td>
<td><code>mysql_install_db</code> </td>
</tr>
<tr>
<td><tt>“share/mysql ”</tt> </td>
<td>錯(cuò)誤消息文件</td>
</tr>
<tr>
<td><tt>“sql-bench”</tt> </td>
<td>基準(zhǔn)程序</td>
</tr>
</table>
<p>源代碼分發(fā)在你配置并編譯后進(jìn)行安裝。缺省地,安裝步驟將文件安裝在<tt>“/usr/local”</tt>下的下列子目錄:
</p>
<table BORDER="1" WIDTH="100%" NOSAVE="#101090" class="p4">
<tr>
<td><strong>目錄</strong> </td>
<td><strong>目錄的內(nèi)容</strong> </td>
</tr>
<tr>
<td><tt>“bin”</tt> </td>
<td>客戶程序和腳本</td>
</tr>
<tr>
<td><tt>“include/mysql”</tt> </td>
<td>包含(頭)文件</td>
</tr>
<tr>
<td><tt>“info”</tt> </td>
<td>Info格式的文檔</td>
</tr>
<tr>
<td><tt>“l(fā)ib/mysql”</tt> </td>
<td>庫文件</td>
</tr>
<tr>
<td><tt>“l(fā)ibexec”</tt> </td>
<td><code>mysqld</code>服務(wù)器</td>
</tr>
<tr>
<td><tt>“share/mysql”</tt> </td>
<td>錯(cuò)誤消息文件</td>
</tr>
<tr>
<td><tt>“sql-bench”</tt> </td>
<td>基準(zhǔn)程序和<code>crash-me</code>測試</td>
</tr>
<tr>
<td><tt>“var”</tt> </td>
<td>數(shù)據(jù)庫和日志文件。 </td>
</tr>
</table>
<p>在一個(gè)安裝目錄內(nèi),源代碼安裝的布局在下列方面不同于二進(jìn)制安裝:
<ul>
<li><code>mysqld</code>服務(wù)器被安裝在<tt>“l(fā)ibexec”</tt>目錄而不是<tt>“bin”</tt>目錄內(nèi)。
</li>
<li>數(shù)據(jù)目錄是<tt>“var”</tt>而非<tt>“data”</tt>。 </li>
<li><code>mysql_install_db</code>被安裝在<tt>“/usr/local/bin”</tt>目錄而非<tt>“/usr/local/mysql/scripts”</tt>內(nèi)。
</li>
<li>頭文件和庫目錄是<tt>“include/mysql”</tt>和<tt>“l(fā)ib/mysql”</tt>而非<tt>“include”</tt>和<tt>“l(fā)ib”</tt>。
</li>
</ul>
<h2><a NAME="Installing_binary" HREF="manual_toc.html#Installing_binary">4.6 安裝MySQL二進(jìn)制代碼分發(fā)</a></h2>
<p>你需要下列工具安裝一個(gè)<strong>MySQL</strong>二進(jìn)制分發(fā):
<ul>
<li>GNU <code>gunzip</code>解壓縮分發(fā)。 </li>
<li>一個(gè)適當(dāng)?shù)?lt;code>tar</code>解包分發(fā)。 GNU <code>tar</code>已知可以。 </li>
</ul>
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -