<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Blogger Scott

    如何在windows系統下安裝MySQL

    ?

    可以運行在本地windows版本的MySQL數據庫程序自從3.21版以后已經可以從MySQL AB公司獲得,而且 MYSQL每日的下載百分比非常大.這部分描述在windows上安裝MySQL的過程. 安裝程序是針對windows版本的MySQL 5.0,結合了圖形安裝向導,自動的安裝MySQL,創建 一個配置文件,啟動服務器,和保護默認的用戶帳戶. 如果你是升級安裝現有的MySQL 4.1.5版本.你必須完成下列步驟:

    1. 獲得和安裝 
    2. 如果有必要安裝配置文件 
    3. 選擇一個想要使用的服務器. 
    4. 啟動服務器 
    5. 為MYSQL帳戶設置密碼. 
    這個過程在沒有安裝配置的myslq安裝程序里完成. 
    MySQL 5.0 for Windows 可用的種格式:
    · 包含二進制的安裝程序可以安裝所有你需要的依次你可以立即啟動服務器. 
    · 原始類包括所有代碼和支持文件建造執行使用Visual Studio 2003編譯系統.

    一般來講,你應該使用二進制形式.較其他比較簡單,和你不需要額外的工具讓mysql使用 和運行. 本文主要描述怎樣在windows上安裝使用二進制格式的MYSQL.

    一、要在WINDOWS上運行MYSQL,你要具備下列條件:

    · 一個32位WINDOWS操作系統,9x,ME,NT,2000,XP,或者 windows server2003.基于 WINDOWS NT操作系統(NT,2000,XP,2003)允許你運行MYSQL 服務器為一個服務.使用基于 WINDOWS NT操作系統是我們強烈推薦的.

    · TCP/IP協議支持. · 二進制版本的MYSQL for windows,可以從 http://dev.mysql.com/downloads/下 載。注意: 如果你通過FTP下載.我們推薦使用適當的FTP軟件很重要.避免在現在過程中文件 損壞..

    · 一個可以打開.zip 文件的工具,用來打開安裝文件

    · 硬盤的空間推薦最小200M. 如果準備通過ODBC連接MYSQL,你也需要ODBC連接驅動

    · 你過你需要的表大于4GB,安裝MYSQL在NTFS或者新的文件系統上.當你創建表的時不 要忘記使用 MAX-ROWS和AVG_ROW_LENGTH.

    二、選擇一個安裝組件

    對于MYSQL 5.0,有三個組件用來選擇安裝MYSQL在WINDOWS上.下列是組件:

    · 基本組件:這個組件有一個類似于mysql-essential-5.0.13-rc-win32.msi和包含最 小需求文件組件不包含可選組件與內含的服務器和基準組件

    · 全部組件:這個組件有一個文件名類似 mysql-5.0.13-rc-win32.zip和包含所有可需 文件來完成WINDOWS安裝.包括配置向導.這個組件包括可選組件與內含的服務器和基準 組件

    · 無安裝存檔:. 這個組件有一個類似于mysql-noinstall-5.0.13-rc-win32.zip的文 件名和包含建立完成安裝組件的文件.配置向導除外.這個組件不包含自動安裝,必須手 動安裝和配置.大多數擁護推薦使用基本組件.

    三、使用配置向導

    MySQL配置向導可以幫助您實現WINDOWS系統下的服務器自動配置。MySQL配置向導首先會根據一一系列的問題創 建一個定制好的my.ini文件,然后根據填寫內容并將其應用到模板中從而產生一個跟安裝相適應的my.ini文件 。配置向導包含在MySQL 5.0服務器中,現在只適合WINDOWS用戶。配置向導很大程度上來源于用戶近幾年在My SQL AB上的反饋信息。如果你覺得向導內容缺少你所需要的重要內 容,或者,你發現有錯誤,請通過MySQL 錯誤報告系統要求添加新特性或報告錯誤信息。

    安裝完畢后可以直接進入配置向導或通過點擊WINDOWS開始程序中的MySQL服務器實例向導進入MySQL配置向導。 另外,也可以找到MySQL安裝目錄下的bin目錄下的MySQLInstanceConfig.exe文件并直接運行它。

    如果你的MySQL配置向導發現了一個已經存在的my.ini文件,你可以重新配置已經存在的服務器,或者通過刪除 my.ini文件、停止并移除MySQL服務的方法移除服務器實例。重新配置已經存在的服務器,選擇“重新配置實例”選項并且選擇“下一步”按鈕。已經存在的my.ini文件被 重新命名為mytimestamp.ini.bak,時間戳是已經存在的my.ini創建時的日期和時間。移除已經存在的數據庫實 例,選擇“移除實例”選項并選擇“下一步”按鈕。如果選擇了“移除實例”選項,進入到確認界面。單擊“運行”按鈕:MySQL配置向導停止并開始移除MySQL服 務,并刪除my.ini文件。但服務器安裝目錄并沒有移除。如果選擇了“重新配置實例”選項,進入到“配置類型”界面,可以選擇安裝想要配置的安裝類型。

    選擇了MySQL配置向導的 “安裝MySQL”,或“重新配置實例”,都將進入到“配置類型”界面有兩個配置類型可供選擇:詳細配置和標準配置。標準配置選項是為那些不需要考慮復雜服務器配置的新手而 設計的。詳細配置選項是給那些能更高好的操作服務器的高級用戶使用的。如果您剛開始使用MySQL,并且把它做為一個單一用戶的開發機器使用的話,標準配置能滿足您的需求。選擇標 準配置后,除了服務選項和安全選項外配置向導對其他部分都做了自動配置。如果你的機器中有已經安裝了MySQL,標準配置可能不太適合你的系統。如果愿意進一步配置的話,“詳細配置 ”選項是推薦的。

    然后進入服務器類型頁面,有三種不同的服務器類型可供選擇,選擇服務器類型后配置向導將會根據選擇的不同確定內存、磁盤、處理器 的使用。

    ? 開發版:這個選項是典型的桌面工作站,是MySQL為個人使用而設計的。有很多其他的桌面應用程序也 可以在此上運行。MySQL服務器使用了最小的系統資源。

    ? 服務器版:選擇此選項MySQL可以和其他一些服務器應用程序如FTP,email,Web服務同時運行。MySQL 服務器配置使用了中等程度的系統資源。

    ? MySQL服務器專業版:這個選項是只能運行MySQL服務器,其他應用程序不可以運行。MySQL服務器配置 將使用所有可用資源。

    “數據庫使用”界面允許在創建MySQL表時可以指示想使用的表操作。選擇項將決定InnoDB存儲引擎是否可用, InnoDB所能使用系統資源的百分比。多功能的數據庫:此選項InnoDB 和 MyISAM存儲引擎可用,并且在兩者之間平均分配資源。推薦在通常情況下 會使用這兩個存儲引擎的的用戶使用。事務型數據庫:此選項InnoDB 和 MyISAM存儲引擎均可用,但更傾向于系統大部門資源為InnoDB存儲引擎所使 用。推薦經常使用InnoDB而很少使用MyISAM的用戶使用。

    ? 非事務型數據庫:此選項完全禁止InnoDB存儲引擎,完全專注于MyISAM存儲引擎。推薦不使用InnoDB 的用戶使用。

    InnoDB表空間界面

    有些用戶更愿意將InnoDB表空間文件放在不同的位置而不是MySQL服務器數據目錄。如果系統有更高的存儲能力 或更高性能的存儲設備可用,比如RAID存儲系統,可以把表空間文件放置在不同的位置。可以修改InnoDB表空間文件的默認位置,從下拉列表框的盤符列表中選擇一個并選擇一個新的路徑。創建定制 的路徑,單擊“...”。 如果修改已經存在的服務器配置,在修改路徑之前必須單擊“修改”按鈕。在啟動服務器之前必須先手工把已 經存在的表空間文件移到新的位置。

    并發連接界面

    控制連接到MySQL服務器的并發連接數目能有效的防止耗進系統資源。并發連接界面允許選擇服務器按所需選擇 服務器的使用情況, 并同時設置并發連接限制。也可以手工設定并發連接數。

    ? 決策支持(DSS)/聯機分析處理(OLAP):服務器不要求大數目的并發連接時選擇此項。最大連接數 目的連接可達100,但平均會有20個并發連接。

    ? 在線事務處理(OLTP):服務器要求大數量的并發連接時選擇此項。最大連接數可達500。

    ? 手工設置:選擇此項可以手工設置并發訪問服務器的最大樹木。從下拉列表框中選擇最大可連接數, 如果下拉列表框中列出的數目沒有可選擇的。可手工輸入最大連接數目。

    網絡配置選項對話框

    可以使用網絡配置對話框來激活或者禁止TCP/IP網絡服務同時配置和MySQL服務器連接的端口號。TCP/IP網絡服 務是默認激活的。Windows可以通過不選擇TCP/IP網絡選項的選項框禁止TCP/IP網絡服務。通常默認使用的端口 是3306。如果需要改變訪問MySQL的端口,可以從下拉選項框中選取新的端口號或者在選項框中直接輸入新的端 口號。如果你選定的端口號已經被使用,系統將會提示你去確認對端口號的選擇。

    字體設置對話框

    MySQL服務器支持多字體設置,同時可以為服務器設置默認服務字體,該字體可以應用于所有的數據表、列和未 被超級控制的數據庫。可以使用字體設置對話框來改變MySQL服務器的默認字體設置。

    1 標準的字體設置:該選項用于將Latin1作為默認的服務字體. Latin1可以用于英文和眾多西文字體。

    2 對于多語言字體的最佳支持:該選項用于UTF8作為默認的服務字體。在單一的字體設置中,UTF8可以存儲來自 很多不同語言的字體。

    3 手動選擇默認字符設置/排序:該選項用于手動設置默認字體。你可以從下拉選擇框所提供的字體中選擇所需 要的字符。

    服務選擇對話框

    在基于Windows NT的平臺上,MySQL服務器可以被作為Windows的一項服務被安裝。當作為一項服務安裝時, MySQL服務器可以隨著系統的啟動而自啟動,并且在服務失敗時,MySQL服務器可以自動重起。在MySQL的默認配置中,將MySQL服務器作為服務安裝,同時該服務的名稱為MySQL。如果你不希望安裝該項服務 ,不選擇作為Windows服務的選擇框即可。你可以從所提供的下拉選擇框中選取一個新的服務名稱或者直接在下 拉選擇框中輸入新的服務名稱。如果需要將MySQL服務器作為一項服務來安裝,同時使MySQL不隨著系統啟動而自啟動,則不選擇自啟動Mysql服 務選擇框。

    安全選擇對話框

    強烈推薦你為你的MySQL服務器設置一個相應的根用戶密碼,同時MySQL配置向導需要你設置一個默認的根用戶 密碼。如果你不希望設置根用戶密碼,則不要選擇修改安全設置選項。為了設置根用戶密碼,需要將設定的根 用戶密碼同時輸入新根密碼和確認選擇框里。如果你需要重新配置一個已存在的服務器,你需要將其的根用戶 密碼輸入到當前的根密碼選擇框里。為了防止通過網絡的根用戶登錄,可以在Root的選擇框中設置為只允許從本地連接。這將增強你的根用戶的安 全性。為了生成一個匿名用戶帳戶,選擇生成匿名帳戶的選擇框。生成一個匿名用戶帳號可能會降低服務器的安全性 ,同時造成登陸和認證的困難。出于這種原因,該選項一般不被推薦。

    確認對話框

    MySQL配置向導中的最后的對話框是確認對話框。可以點擊“執行”按鈕來啟動配置操作。為了返回到前一個對 話框,可以點擊“返回”按鈕。可以點擊“取消”按鈕退出MySQL配置向導而無需配置服務器。當你點擊“執行”按鈕后而無需配置服務器,MySQL配置向導執行一系列任務,該任務在被執行時,執行進度將 會被顯示在屏幕上。 MySQL配置向導首先使用由MySQL AB開發者和工程師所準備的模版配置文件來決定基于你的選擇的配置文件選項 。該模版被命名為my-template.ini,同時位于你的服務期安裝目錄下。MySQL配置向導將這些選擇項寫入至 my.ini文件中。my.ini文件的最終位置將會被顯示在寫配置文件任務中。如果你選擇為MySQL服務器生成一項服務,MySQL配置向導將會生成并啟動該服務。如果你正在重新配置一個已 存在的服務,MySQL服務向導將會重起服務以重新應用改變的配置。如果你選擇設置一個根密碼,MySQL配置向導將會和服務器連接,設置你的新的根用戶密碼同時應用你已經選擇 的其他安全設置。在MySQL配置向導完成其的任務后,一個摘要將會被顯示出來。點擊“結束”按鈕退出MySQL配置向導。

    配置文件my.ini的位置

    MySQL配置向導將my.ini文件放置在MySQL服務器的安裝目錄中。這將有助于將配置文件和具體的服務器實例相 關聯。為了保證MySQL服務器知道到哪里查找my.ini文件,和下面內容類似的參數將會被作為服務安裝的一部分 傳遞給MySQL服務器:--defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini C:\Program Files\MySQL\MySQL Server 5.0可以被指向MySQL服務器的安裝路徑所代替。

    編輯my.ini文件

    可以使用文本編輯器打開該文件同時做出必要的編輯和修改。你也可以以MySQL Administrator的應用程序來修 改服務器配置。 MySQL客戶端和應用程序,例如mysql命令行客戶端和mysqldump并不能確定位于服務器安裝目錄中的my.ini文件 的位置。為了配置客戶端和應用程序,根據你的Windows版本的不同,在C:\Windows下或者在C:\WINNT目錄下生 成新的文件my.ini 文件

    四、從Noinstall Zip Archive中安裝MySQL

    正在從Noinstall軟件包安裝MySQL的用戶可以使用這個說明來手動安裝MySQL。從Zip archive 中安裝MySQL的 步驟如下:

      1 在指定的安裝目錄下解壓軟件包。
      2 制造選擇文件。
      3 選擇MySQL服務類型。
      4 開始MySQL服務。
      5 保護默認賬戶。
    解壓安裝軟件包

    為了手工安裝MySQL,需要按以下步驟進行:

    1 如果你需要對以前的版本更新,請參考在更新步驟剛開始時的文章 “Upgrading MySQL on Windows”。

    2 如果你正在使用基于Windows NT的操作系統例如Windows NT, Windows 2000, Windows XP或者Windows Server 2003,必須保證你作為擁有管理員特權的用戶登錄該系統。

    3 選擇一個安裝位置。傳統的MySQL服務器安裝在 C:\mysql,而MySQL安裝向導將 MySQL 安裝到 C:\Program Files\MySQL。如果不將 MySQL 安裝到 C:\mysql下,你必須在啟動或者在選擇文件中具體指出安裝路徑。

    4 選用壓縮工具將安裝壓縮軟件解壓縮至選擇安裝的位置上。有些壓縮工具有可能將其解壓到你的被選擇的安 裝位置的子目錄中。如果是這種情況,你可以將該子目錄的內容從子目錄移至安裝路徑下。

    生成選擇文件

    如果你需要在運行服務器時,具體化啟動選項,你可以在命令行標志出他們或者在一個選擇文件中設置他們。 對于每次服務器啟動時所使用的服務,你將會發現使用選擇文件來具體化你的MySQL配置是非常便利的。尤其是 在以下情況中:當MySQL服務在Windows上啟動時,其在兩個文件中尋找選項:在Windows目錄下的 my.ini 文件以及C:\my.cnf 文件。Windows目錄典型的命名如下:C:\WINDOWS or C:\WINNT。你可以通過下面的命令來決定WINDIR環境變量 的值: C:\> echo %WINDIR% MySQL首先在my.ini 文件中尋找選項,然后是在my.cnf 文件中。然而,為了避免混淆,最好是只用一個文件。 如果你的PC使用加載的啟動裝備同時C:不是啟動區,那你只能通過my.ini文件來進配置。不管你使用哪種選擇 文件,該文件必須是文本格式。你同時也可以充分利用包含在你的MySQL發布版的樣本文件。在你的安裝目錄下 尋找諸如 my-small.cnf, my-medium.cnf, my-large.cnf和my-huge.cnf的文件,這些文件可以被重新命名同時 拷貝到合適的位置作為一個基本的配置文件來使用。一個選擇文件可以被任何文本編輯器生成和修改,諸如 Notepad等。例如,如果MySQL被安裝在E:\mysql 目錄下,而數據目錄是在E:\mydata\data下,你可以生成一個 包含 [mysqld] 部分的選擇文件來具體化基本目錄和數據目錄的參數值:
    [mysqld]
    # set basedir to your installation path
    basedir=E:/mysql
    # set datadir to the location of your data directory
    datadir=E:/mydata/data
    
    在這里需要注意Windows路徑名在事先使用的斜線而不是反斜線選擇文件中被具體化。因此當你使用反斜線時, 你必須使用雙斜線。
    [mysqld]
    # set basedir to your installation path
    basedir=E:\\mysql
    # set datadir to the location of your data directory
    datadir=E:\\mydata\\data
    
    在Windows中,MySQL安裝程序直接將數據目錄安裝在你安裝MySQL的目錄下。如果你需要在另外不同的位置使用 數據目錄,你需要將整個數據目錄的內容拷貝至新的位置。例如,如果MySQL安裝在C:\Program Files\MySQL\MySQL Server 5.0 目錄下,則數據目錄的位置默認是在 C:\Program Files\MySQL\MySQL Server 5.0\data下。如果你需要將E:\mydata 作為你的數據目錄,你需要做以下兩件事情:

    1 將整個數據目錄和它的所有內容從C:\Program Files\MySQL\MySQL Server 5.0\data 移至E:\mydata.。

    2 每次啟動服務時,使用a--datadir選項來確認新的數據目錄位置。

    選擇MySQL服務類型

    以下顯示了MySQL5.0Windows版本提供的服務類型:
    mysqld-debug帶有完全調試和自動內存分配檢查的編譯,該編譯對象也包括 InnoDB和BDB數據表。
    mysqld  優化InnoDB支持的二進制數據。
    mysqld-nt優化命名管道支持的二進制數據。
    mysqld-max優化InnoDB 和 BDB數據表所支持的二進制數據
    mysqld-max-nt同mysqld-max功能一樣,但是編譯時支持命名管道
    
    上述優化選項都是針對Intel 處理器的,但是應該可以工作在任何Intel i386-class 或者更高的處理器。在MySQL 5.0中,所有的Windows版本服務器都提供了對數據庫目錄的符號鏈接。 MySQL提供了對Windows平臺上的TCP/IP 的支持。mysqld-nt和 mysql-max-nt 服務器則提供了對Windows NT,2000,XP和2003下的命名管道的支持。然而,不管在何種平臺下,默認使用的都是TCP/IP。(在很多Windows 配置下,命名管道要比TCP/IP服務要慢)

    命名管道的使用受以下條件的制約:

    ? 命名管道只有當你啟動服務時選擇 --enable-named-pipe才會被激活。非常有必要的顯式使用該選項 ,因為有些用戶在命名管道正在使用時關掉MySQL服務器遇到過故障問題。 ? 命名管道只有在mysqld-nt 或mysqld-max-nt 服務器下并且僅當該服務器運行在支持命名管道的 Windows版本的平臺下才能使用。? 在Windows 98 or Me系統下,只有當其安裝了TCP/IP后,這些服務才能夠運行。命名管道的連接不能 使用。? 上述服務在Windows 95下不能夠運行。注意:在參考手冊中的大部分例子都使用mysqld作為服務名。如果你使用另外一個服務器,例如mysqld-nt,則 需對上述例子作合理的替代。

    首次開啟服務

    這部分的信息主要應用在使用Noinstall版本安裝MySQL時,或者希望手動而不是使用GUI工具配置和檢測MySQL 的情況下。在Windows 95, 98, or Me下,MySQL客戶端經常和使用TCP/IP的服務器相連接。(這允許在你網絡上的任意機器 可以和MySQL服務器連接)。基于這一點,你必須保證在啟動MySQL前,TCP/IP 支持安裝在你的機器上。你可以 到在你Windows CD-ROM中找到TCP/IP服務。 在這里需要注意的是如果你正在使用老的Windows 95發布版本(例如OSR2),那很有可能你在使用一個舊的 Winsock軟件包;MySQL需要的是Winsock 2。你可以從http://www.microsoft.com/.下載最新的Winsock軟件包 。Windows 98具有新的Winsock 2庫,所以無需更新庫。在基于NT的系統例如 Windows NT, 2000, XP, or 2003上,客戶可以有兩個選擇。他們可以使用TCP/IP或者當 服務器支持命名管道的連接時使用命名管道。為了得到在TCP/IP下工作的Mysql版本,你必須安裝service pack 3(或者更新的版本) 如果在啟動時,選擇 --shared-memory, Windows版本的MySQL 5.0同樣也支持共享內存的連接。客戶端可以選 擇 --protocol=memory 選項來進行共享內存的連接。

    以上對啟動MySQL服務進行了總體概述,下面的內容提供了從命令行或者作為Windwos服務來啟動MySQL服務器更 加具體的信息:

    假設MySQL安裝在默認位置C:\Program Files\MySQL\MySQL Server 5.0下。如果你把MySQL安裝在不同的位置上 ,則需調整相應的路徑名。測試工作可以從控制臺窗體(或者通過“DOS window”)通過一個即時命令來完成。 這樣你就可以會在窗體中比較容易的看到服務器狀態信息。如果你的配置有誤時,這些信息將有助于你識別和 修復任何故障。為了開啟服務,輸入以下命令:
    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld --console
    對于InnoDB支持的服務器,在服務啟動時你可以看到下列信息:
    InnoDB: The first specified datafile c:\ibdata\ibdata1 did not exist:
    InnoDB: a new database to be created!
    InnoDB: Setting file c:\ibdata\ibdata1 size to 209715200
    InnoDB: Database physically writes the file full: wait...
    InnoDB: Log file c:\iblogs\ib_logfile0 did not exist: new to be created
    InnoDB: Setting log file c:\iblogs\ib_logfile0 size to 31457280
    InnoDB: Log file c:\iblogs\ib_logfile1 did not exist: new to be created
    InnoDB: Setting log file c:\iblogs\ib_logfile1 size to 31457280
    InnoDB: Log file c:\iblogs\ib_logfile2 did not exist: new to be created
    InnoDB: Setting log file c:\iblogs\ib_logfile2 size to 31457280
    InnoDB: Doublewrite buffer not found: creating new
    InnoDB: Doublewrite buffer created
    InnoDB: creating foreign key constraint system tables
    InnoDB: foreign key constraint system tables created
    011024 10:58:25  InnoDB: Started
    
    當服務器完成啟動序列后,你可以看到如下信息,這些信息表明服務器已經開始服務客戶端連接:
    mysqld: ready for connections
    Version: '5.0.13-rc'  socket: ''  port: 3306
    
    服務器將會繼續將其所產成的判斷信息輸入到控制臺上。而你則可以打開一個新的控制臺來運行客戶端程序。如果你省略了 --console 選項,服務器將會把診斷信息輸出到 數據目錄下的錯誤日志中(默認是C:\Program Files\MySQL\MySQL Server 5.0\data )。錯誤日志以.err為擴展名。注意:在MySQL授權數據表的帳號初始化是沒有密碼的。

    在Windows命令行下開啟MySQL服務

    MySQL服務器可以手動從命令行啟動。該項操作可以在Windows的任何版本下完成。為了從命令行啟動mysqld服 務,你應該啟動一個控制臺窗體(或者"DOS 窗體")同時輸入以下命令:

    C:\> C:\Program Files\MySQL\MySQL Server 4.1\bin\mysqld

    在上述例子中使用的路徑可以根據你的系統安裝MySQL的路徑不同而改變。在非NT版本的Windows版本上, mysqld是在后臺啟動的。這也就意味著在服務啟動之后,你查看另外的即時命令。基于這一點,你應該在服務 運行時打開另外一個控制窗體來運行客戶端程序。

    你可以通過執行以下命令停止MySQL服務:

    C:\> C:\Program Files\MySQL\MySQL Server 4.1\bin\mysqladmin -u root shutdown

    該命令激活MySQL管理程序和服務器連接同時告訴他關閉服務。該名令是作為MySQL根用戶連接的,在Mysql權限 系統中,根用戶默認是管理員帳戶。注意在MySQL授權系統中的用戶和任意在Windows下登陸的用戶是完全獨立 的。如果mysqld沒有啟動,檢查錯誤日志文件查看是否服務器向其中寫入了信息,該信息說明問題產生的原因。錯 誤日志位于C:\Program Files\MySQL\MySQL Server 5.0\data 目錄下。該日志是以擴展名為.err的文件。你也 可以試著重新開啟mysqld 控制臺服務,這樣你就有可能獲取一些有助于解決問題的信息。最后一個選項是開啟mysqld時選擇--standalone --debug。在這種情況下,mysqld 將會寫一個 C:\mysqld.trace的日志文件,該日志文件將會包含mysqld為何沒有啟動的原因。

    使用mysqld --verbose --help 可以看到mysqld所提供的所有選項的幫助信息。

    作為一項Windows服務開啟MySQL

    在NT系列的Windows版本(Windows NT, 2000, XP, 2003)中,推薦運行MySQL服務的方法是將其作為Windows服務 進行安裝,在這種情況下MySQL隨著Windows開始和結束自動開始和結束。一個作為服務被安裝的MySQL服務器能 夠被從命令行上使用NET命令或者使用圖形界面服務程序所控制。服務程序(Windows 服務控制管理器)可以被在 Windows控制面板中找到(在Windows 2000, XP, and Server 2003的管理工具下)。建議在執行服務器安裝程序 時或者在命令行中執行刪除操作時關閉服務應用程序。這將會防止很多錯誤。在將MySQL作為Windows服務安裝之前,如果當前服務器正在運行,應該首先使用下述命令停止其的運行:

    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqladmin -u root shutdown

    注意:如果MySQL根用戶有密碼,那么你需要這樣激活命令:

    C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqladmin -u root -p shutdown ,同時必須根據提示輸入 用戶密碼。

    這調用了MySQL的管理功能mysqladmin,mysqladmin可以連接到服務器,讓服務器關閉。這個命令是作為MySQL 的 root用戶而和服務器建立連接的,MySQL的 root用戶在MySQL授權系統中是默認管理帳戶。需要注意的是在 MySQL授權系統中的用戶是完全獨立于Windows上登錄用戶。

    用下列命令可將服務器作用一項服務安裝:

    C:\> mysqld –install

    如果你用server名字在將服務器安裝成一項服務的過程中遇到問題, 那就試試用全稱路徑名。舉例來說:

    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld --install

    你也可以將到mysql bin目錄的路徑加入到Windows 系統PATH 環境變量:

    ? 在Windows桌面上,右擊“我的電腦”,選擇“屬性” ? 出現系統屬性菜單,選擇“高級”,然后單擊“環境變量”按鈕。? 在“系統變量”列表中選擇“路徑”,然后單擊“編輯”按鈕。這時會出現編輯系統變量對話框。 ? 將光標放在“變量值”對應的文字的末尾(請使用 End key,以確保光標在最后的位置) 。然后輸入 MySQL bin 目錄的全稱路徑, (舉個例子, C:\Program Files\MySQL\MySQL Server 5.0\bin), 注意應該用分 號將這個路徑與其它值分開。 點擊“確定”逐個關閉所有打開的對話框。現在你就可以在DOS系統下從系統的 任意目錄中,通過輸入任意可執行的 MySQL 程序的名字而找到該程序,不必再輸入路徑。這包括服務器、 mysql 客戶和所有 MySQL 命令行比如 mysqladmin 和 mysqldump。 ? 注意如果你在同一臺機器上運行多個MySQL 服務器的話,就不要將MySQL bin 目錄加入到 Windows 路 徑中。

    警告: 在手工編輯系統路徑的時候一定要特別小心,如果不小心刪除或改變了系統路徑中的任何部分都將導致 誤操作甚至導致系統不穩定。服務安裝命令并不啟動服務器,關于這點后面將詳細介紹。

    MySQL 5.0 在安裝服務的過程中對附加參數提供的支持有限:? 你可以在安裝選項之后立即為服務命名,否則默認的服務名字是 MySQL。

    ? 如果設置了一個服務名字,就可以用使用單一選項。通常按照約定,這應當是--defaults- file=file_name 來設置選項文件的名字,服務器在啟動時會從選項文件中讀取選項。可以使用單一選項而不用--defaults-file,但不推薦這樣做。因為,--defaults-file 更加靈活,你可以 通過將多個選項放到指定的選項文件中而為服務器設置多個啟動選項。同樣,在MySQL 5.0中我們也不支持使用 不同于--defaults-file的選項,但5.0.3版本就可以這樣做了。

    ? 對于MySQL 5.0.1,你也可以在服務名字下設置一個 --local-service(本地服務)選項。這會使服務 器用LocalService Windows帳戶運行。這種帳戶只在Windows XP或更新的系統上才有。如果服務名字下既有-- defaults-file 也有 --local-service,那么它們之間不論次序。 對于安裝成Windows服務的MySQL服務器來說,由下面的規則決定服務名字和服務器使用的選項文件: ? 如果服務安裝命令沒有指定服務名字,那么安裝選項將默認服務名字為MySQL, 服務器將使用 MySQL服 務,并從標準選項文件中的 [mysqld]群中讀取選擇。 ? 如果服務安裝命令沒有指定了一個服務名字,服務器將使用指定的服務名字并從從標準選項文件中與 服務名字相同的群中讀取選項。 服務器也從標準文件選項文件中的[mysqld]群中讀取選項。這保證可以從[mysqld]群中讀取所有MySQL服務都 用的選項,而用指定服務名字按照的服務器使用和與指定服務名字相同的選項群。 ? 如果安裝命令在服務名字之后指定一個 --defaults-file 選項,那么服務器只從指定文件的 [mysqld] 群中讀取選項而忽略標準選項文件。

    下面的命令是一個復雜的例子:

    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld --install MySQL --defaults-file=C:\my- opts.cnf

    在這里,由安裝選項給出了默認服務名字MySQL。如果沒有給出--defaults-file選項,那么這個命令將使服務 器從標準選項文件中的[mysqld]群中讀取。然而在這里給出了--defaults-file選項,所以服務器只從指定文件 的[mysqld] 選項群讀取。

    你也可以在啟動MySQL服務之前,在Windows Services 工具欄中將選項定義為啟動參數。一旦MySQL服務器被安裝成一項服務,Windows就會在啟動時自動啟動該服務。也可以在Services 工具欄中直接 啟動MySQL服務器,或使用NET START MySQL命令也可。NET 命令不區分大小寫。

    作為服務運行時,mysqld無權使用控制窗口,因此在這里看不到消息。如果mysqld不能啟動,就查錯誤記錄看 看服務器是不是寫下了什么說明問題原因的消息。錯誤記錄在MySQL數據目錄下(比如: C:\Program Files\MySQL\MySQL Server 5.0\data)。錯誤記錄的后綴名是 .err。

    MySQL作為服務安裝的情況下,如果服務正在運行,Windows關閉的時候會自動停止服務。 如果你不想在boot 進程中自動啟動服務,你可以將服務器作為手動服務安裝。手動服務的安裝需要選擇“手動 安裝” 選項而不是 “安裝”選項:

    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld --install-manual

    要刪除作為服務安裝的服務器時,首先要通過NET STOP MYSQL關閉正在運行的MYSQL,然后用“刪除”選項刪除 它:

    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld --remove 如果mysqld不是作為服務運行,可以用命令行啟動它。

    五、測試 MySQL安裝

    你可以通過執行下列任何一個命令來測試MySQL 服務器是否安裝:

    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqlshow
    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqlshow -u root mysql
    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqladmin version status proc
    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysql test
    
    如果mysqld對來自客戶程序的TCP/IP 連接反應很慢,那么說明你的DNS可能有問題。在這種情況下,用--skip -name-resolve選項啟動mysqld,而且在MySQL 授權列表的Host欄中只使用本地Host和IP。 你可以強迫 MySQL客戶運用管理連接,而不用TCP/IP。方法是選定--pipe 或--protocol=PIPE 按鈕,或指定 . (period)作為主機名。運行--socket 選項來規定管道名。

    九、排除在Windows下安裝MySQL的故障

    如果是初次安裝MySQL,你可能會遇到一些阻止MySQL啟動的錯誤,這一部分的目的就是幫助你診斷和排除某些 故障。 在排查故障時,可用的第一項資源就是錯誤記錄。MySQL 服務器的錯誤記錄會記下阻止服務器啟動的相關錯誤 。錯誤記錄在數據目錄下,my.ini文件中記載了數據目錄的地址。默認的文件目錄位置是C:\Program Files\MySQL\MySQL Server 5.0\data。 另外在MySQL服務運行過程中的控制信息也可能會記載一些相關的錯誤。在mysqld作為服務安裝之后,從命令行 中執行NET START mysql命令查看是否有關于作為服務啟動MySQL服務器的錯誤信息。

    下面的例子是一些首次安裝MySQL和啟動服務器的過程中,可能遇到的常見錯誤信息:
    ?System error 1067 has occurred.
    ?Fatal error: Can't open privilege tables: Table 'mysql.host' doesn't exist
    ? 當 MySQL 服務器找不到 mysql privileges database 或其它關鍵文件時,就會產生這樣的信息。當 MySQL的原始數據或數據目錄安裝在不同于默認位置(分別是C:\mysql 和 C:\Program Files\MySQL\MySQL Server 5.0\data )時,常常遇到這個問題。 一種情況是MySQL已升級并安裝到新的位置,但配置文件并沒有反映新的安裝位置。另外 ,可能會產生相互沖 突的新、舊配置文件。因此,在升級MySQL時,應確保刪除舊的配置文件或重命名。 如果你將MySQL安裝到了C:\Program Files\MySQL\MySQL Server 5.0以外的其它位置,你必須確保MySQL服務器 通過一個配置文件(my.ini) 知道安裝的位置。my.ini文件必須在Windows目錄下,通常是C:\WINNT 或 C:\WINDOWS。你可以從WINDIR環境變量的值來確定其具體位置,需要從命令提示符發出下列命令:

    C:\> echo %WINDIR%

    生成一個選項文件,并且可以用任何文本編輯程序修改,比如Notepad。舉例來說,如果MySQL安裝在E:\mysql 、數據目錄是D:\MySQLdata,你可以創建一個選項文件,在其中創建一個[mysqld]部分來定義basedir 和 datadir參數:
    [mysqld]
    # set basedir to your installation path
    basedir=E:/mysql
    # set datadir to the location of your data directory
    datadir=D:/MySQLdata
    
    注意在選項文件中,Windows 路徑名是用(forward) slashes 定義的,而不是用 backslashes。如果你使用的 是 backslashes,你就需要將它們加倍:
    [mysqld]
    # set basedir to your installation path
    basedir=C:\\Program Files\\MySQL\\MySQL Server 5.0
    # set datadir to the location of your data directory
    datadir=D:\\MySQLdata
    
    如果你在MySQL配置文件改變了datadir值,那么你在重新啟動MySQL服務器之前就必須將已有的MySQL數據目錄 轉移到相應的位置。

    ? Error: Cannot create Windows service for MySql. Error: 0

    ? 如果你不先停止并刪除現有的MySQL而重新安裝或升級時,或用MySQL Configuration Wizard安裝 MySQL時,就會產生這樣的錯誤。因為當Configuration Wizard試圖安裝服務時,就會發現已經有一個同名的服 務。 對這個問題的一個解決方法是,在使用configuration wizard時選擇一個服務名稱,而不用默認的mysql 。這 可以使新的服務正確地安裝,但舊的還放在那里。建議最好還是把不用的刪掉。
    要永久刪除舊的mysql服務,需要用戶以管理權限在命令行上執行下列命令:
    C:\>sc delete mysql
    [SC] DeleteService SUCCESS
    
    如果你的Windows版本上沒有sc工具欄,就從下面的網址上下載delsrv工具欄: http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/delsrv-o.asp 然后運用delsrv mysql syntax。

    六、在Windows上升級MySQL

    這部分介紹一些在Windows上升級MySQL的必需步驟。
    1. 在升級之前,你應當一直支持目前的MySQL安裝。 “Database Backups”
    2. 在http://dev.mysql.com/downloads可以下載在Windows上安裝MySQL 的最新內容。
    3. 在升級MySQL之前,必須停止服務器。
    
    如果服務器是作為服務安裝的,要從命令提示符通過下列命令停止服務:

    C:\> NET STOP MYSQL

    如果不是作為服務安裝的,就用下列命令停止MySQL服務器:

    C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqladmin -u root shutdown

    當將4.1.5以前的版本升級到 MySQL5.0時,或將用Zip壓縮文件安裝的MySQL升級到用MySQL Installation Wizard安裝的MySQL版本時,必須手動刪除以前的安裝和MySQL服務(如果服務器有作為服務安裝的話). 用下列命令刪除原來的MySQL服務:

    C:\> C:\mysql\bin\mysqld --remove

    如果不刪除原有服務,MySQL Installation Wizard可能無法安裝新的MySQL服務。

    如果你從Zip 壓縮文檔安裝MySQL,要么覆蓋原有的MySQL安裝(通常在C:\mysql),要么在不同的目錄下安裝 ,比如C:\mysql4。建議覆蓋原有安裝。

    重啟服務器。如果MySQL是作為服務運行的話,用NET START MySQL,或者直接調用mysqld。

    Windows 和 Unix兩種系統下的MySQL比較

    MySQL在Windows上已經相當穩定。Windows版本的MySQL和相應的Unix版本的MySQL具有相同的特性,但存在以下 幾點不同:

    ? Windows 95和線程

    Windows 95分出約200字節的主內存給每一個線程。MySQL的每個連接創建一個新的線程,所以如果服務器處理 多個連接時,不應該在Windows 95下運行 mysqld。其他版本的Windows不存在這個bug。

    ? 限制端口數量

    Windows系統下大概有4,000個可用端口,當一個端口的連接關閉時,需要2-4分鐘才能重新啟用該端口。當處 于代理連接和斷開連接的高峰期時,可能使所有的端口在重新啟用之前都處于關閉狀態。如果發生這種情況, MySQL服務器將停止相應,盡管它還處于運行狀態下。需要注意的是,機器上運行的其它應用程序也可能使用端 口,這也會使可用端口的數量下降。更多的信息請參看下面鏈接: http://support.microsoft.com/default.aspx?scid=kb;en-us;196271.

    ? 同時讀取

    MySQL依賴于調用pread()和pwrite()系統來使INSERT和SELECT可用。目前,我們使用mutexes來代替pread()和 pwrite()。我們打算用虛擬的界面來替代文件水平界面,這樣我們就可以在NT,2000和XP系統上使用readfile ()/writefile()界面并獲得較高的速度。目前MySQL 5.0只能執行2,048個文件,這就意味著不能在Windows NT ,2000,XP和2003以及Unix下運行多個同時運行的線程。

    ? 封閉讀取

    MySQL對每一個連接使用封閉讀取,如果指定的通道連接可用,這就意味著以下幾點:
    o一個連接不會在8小時后自動斷開,這發生于Unix版本的MySQL。
    o如果連接懸掛,只有關閉MySQL才能斷開該連接。
    omysqladmin kill 對睡眠狀態的連接無效。
    o只要存在睡眠連接,mysqladmin shutdown不會異常終止。
    ? ALTER TABLE

    當你正在執行一個ALTER TABLE語句時,在被其他線程使用前表格將被鎖定。在Windows系統下可發生該情況, 你不能刪除被另外一個線程使用的文件。將來我們可能找到解決該問題的方法。

    ? DROP TABLE

    因為MERGE 處理器處理隱藏于MySQL上一層的表格,這可使Windows下的被MERGE表格使用的DROP TABLE不工作。 因為Windows不允許dropping文件開啟,你就必須轉儲清除所有的MERGE表格(使用FLUSH TABLES)或者在 dropping文件前先撤銷MERGE表格。

    ? 數據目錄和索引目錄

    Windows系統忽略了CREATE TABLE的數據目錄和索引目錄選項,這是由于Windows不支持符號連接造成的。在擁 有無功能realpath()調用的系統上也會忽略這些選項。

    ? 撤銷數據庫

    你不能夠撤銷正在被某個線程使用的數據庫。

    ? 從任務管理器內關閉MySQL

    你不能夠在任務管理器內關閉MySQL,也不能依靠Windows 95的關機操作關閉MySQL。你必須使用mysqladmin shutdown來關閉MySQL。

    ? 名稱的大小寫

    在Windows下的文件名不區分大小寫,所以Windows同樣不區分MySQL數據庫和表格的名稱的大小寫。唯一的限制 就是數據庫和表格名稱必須在給定的語句內全部使用相同的case來指定。

    ? ‘\’路徑名分離字符

    在Windows下使用‘\’來分離路徑名,‘\’同樣是MySQL里的換碼符。如果你使用LOAD DATA INFILE 或者 SELECT ... INTO OUTFILE,使用Unix格式的文件名內出現‘/’字符:
    mysql> LOAD DATA INFILE 'C:/tmp/skr.txt' INTO TABLE skr;
    mysql> SELECT * INTO OUTFILE 'C:/tmp/skr.txt' FROM skr;
    換句話說, 你必須使用兩個‘\’字符。
    mysql> LOAD DATA INFILE 'C:\\tmp\\skr.txt' INTO TABLE skr;
    mysql> SELECT * INTO OUTFILE 'C:\\tmp\\skr.txt' FROM skr;
    
    ? 進程管道的問題

    進程管道不會按照Windows命令行的提示可靠的工作。如果進程管道包含有字符^Z / CHAR(24),Windows便為認 為達到文件尾并終止程序。當你應用下面的一個二進制日志時便會出現問題:

    C:\> mysqlbinlog binary-log-name | mysql --user=root 如果你需要應用該日志并遇到問題,你可以懷疑這是由于^Z / CHAR(24)字符導致的,可使用下面的工作區來解 決: C:\> mysqlbinlog binary-log-file --result-file=/tmp/bin.sql C:\> mysql --user=root --execute "source /tmp/bin.sql" 這樣,后面的命令也可以可靠的讀取含有二進制數據的SQL文件。

    ? 用戶錯誤所導致的拒絕訪問

    如果你嘗試運行MySQL代理程序來連接服務器,同時該服務器又在同一臺機子上運行著,你就被當作'some- user'@'unknown'用戶而被拒絕訪問'mysql'數據庫,這表明MySQL不能夠恰當的解析主機名。要解決該問題,你必須創建一個名為\windows\hosts的文件,并包含下面的信息:
    127.0.0.1       localhost

    posted on 2006-08-22 00:55 江天部落格 閱讀(1000) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 美女内射毛片在线看免费人动物| 亚洲精品无码久久久久久| 亚洲AV无码国产在丝袜线观看| 亚洲免费在线观看| 亚洲av高清在线观看一区二区| 在线a亚洲v天堂网2018| 免费一级毛片在线播放不收费| 国产免费啪嗒啪嗒视频看看 | 亚洲熟妇AV一区二区三区浪潮| 亚洲乱码中文字幕小综合| 亚洲人成网站在线观看播放青青| 亚洲大片免费观看| 日韩亚洲人成在线| 亚洲AV无码一区二区三区久久精品 | 久久成人a毛片免费观看网站| 久久大香伊焦在人线免费| 国产a视频精品免费观看| 成人免费视频观看无遮挡| 波多野结衣久久高清免费| 在线观看永久免费视频网站| 国产三级免费观看| 国产偷窥女洗浴在线观看亚洲| 亚洲精品tv久久久久久久久| 亚洲综合精品一二三区在线| 色婷五月综激情亚洲综合| 亚洲色偷精品一区二区三区| 偷自拍亚洲视频在线观看99| 中国性猛交xxxxx免费看| 久久国产免费一区二区三区| 丁香花在线观看免费观看| 免费人成在线观看网站视频| 国产国拍精品亚洲AV片| 精品亚洲麻豆1区2区3区| 亚洲国产精品成人综合色在线| 有码人妻在线免费看片| 久久国产免费一区二区三区| 最近最好的中文字幕2019免费| 亚洲最大福利视频| 一级人做人a爰免费视频| 一区二区在线免费观看| 免费鲁丝片一级在线观看|