全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3778
推到 Plurk!
推到 Facebook!

在同一台機器上運行多個MySQL伺服器

 
AB
高階會員


發表:166
回覆:262
積分:125
註冊:2003-08-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-11-29 13:24:11 IP:61.221.xxx.xxx 未訂閱
http://unix-cd.com/article/ShowArticle2.asp?ArticleID=337 在同一台機器上運行多個MySQL伺服器 [ 作者:knetfox 轉貼自:http://www.chinaunix.net 點擊數:88 文章錄入:sdccf ] 些情況下你可能想要在同一台機器上運行多個伺服器。例如,你可能想要測試一個新的MySQL版本而讓你現有生産系統的設置不受到干擾,或你可能是想要爲不同的客戶提供獨立的MySQL安裝一個因特網服務供應商。 如果你想要運行多個伺服器,最容易的方法是用不同的TCP/IP埠和套接字文件重新編譯伺服器,因此他們不是偵聽同一個TCP/IP埠或套接字。 假設一個現存伺服器配置爲缺省埠號和套接字文件,那麽用一個這樣的configure命令行設置新的伺服器: shell> ./configure --with-tcp-port=port_number \ --with-unix-socket=file_name \ --prefix=/usr/local/mysql-3.22.9 這裏port_number和file_name應該不同於缺省埠號和套接字文件路徑名,而且--prefix值應該指定一個不同于現存的MySQL安裝所在的安裝目錄。 你可以用這個命令檢查由任何當前執行的MySQL所使用的套接字和埠: shell> mysqladmin -h hostname --port=port_number variables 如果你有一個MySQL伺服器正運行在你使用了的埠上,你將得到MySQL的一些最重要的可配置變數的一張表,包括套接字名等。 你也應該編輯你機器的初始化腳本(可能是“mysql.server”)來啓動並殺死多個mysqld伺服器。 你不必重新編譯一個新MySQL伺服器,只要以一個不同的埠和套接字啓動即可。你可以通過指定在運行時safe_mysqld使用的選項來改變埠和套接字: shell> /path/to/safe_mysqld --socket=file_name --port=port_number 如果你在與開啓日誌的另一個伺服器相同的一個資料庫目錄下運行新伺服器,你也應該用safe_mysqld的--log和--log-update選項來指定日誌文件的名字,否則,兩個伺服器可能正在試圖寫入同一個日誌文件。 警告:通常你決不應該有在同一個資料庫中更新資料的2個伺服器!如果你的OS不支援無故障(fault-free)的系統鎖定,這可能導致令人驚訝的事情發生! 如果你想要爲第二個伺服器使用另一個資料庫目錄,你可以使用safe_mysqld的--datadir=path選項。 當你想要連接一個正在運行的使用一個不同於編譯進你的客戶程式中埠的MySQL伺服器時,你可以使用下列方法之一: 以--host 'hostname' --port=port_numer或[--host localhost] --socket=file_name啓動客戶。 在你的C或Perl程式中,當連接MySQL伺服器時,你可以給出埠和套接字參數。 在你啓動客戶程式之前,設置MYSQL_UNIX_PORT和MYSQL_TCP_PORT環境變數,指向Unix套接字和TCP/IP的埠。如果你通常使用一個特定的套接字或埠,你應該將設置這些環境變數的命令放進你的“.login”文件中。 在你的主目錄下的“.my.cnf”文件中指定缺省套接字和TCP/IP埠。
系統時間:2024-05-07 22:51:03
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!