国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

在UNIX上安裝MySQL

2024-07-24 12:55:22
字體:
來源:轉載
供稿:網友
    可得到幾種版本的mysql分發包。當前穩定的發行版有3.22 版本系列。當前正在開發的版本為3.23 系列。一般,應該使用系列中最高編號的版本。
    mysql分發包可以以二進制代碼、rpm 和源代碼的格式得到。二進制代碼和rpm 分發包容易安裝,但必須接受建立在分發包內的安裝設計和缺省配置。源代碼分發包安裝很困難,因為必須對軟件進行編譯,但可對參數進行更多的控制。例如,可以只編譯客戶機程序的分
發包,而不用管服務器,可以更改安裝軟件的目標位置等。
    分發包邢鋁幸桓齷蚨喔鱟榧?br>     mysqld 服務器
    客戶機程序(mysql、mysqladmin 等)以及客戶機編程支持環境(庫和頭文件)
    文檔
    標準數據庫
    語言支持環境
    源程序和二進制代碼分發包含有上述所有內容。每個rpm 文件只包含其中一些內容,因此為了得到所需的東西,可能需要安裝多個r p m。
    如果打算連接到其他機器上運行的服務器,則不需要安裝服務器,但應該安裝客戶機軟件:
    如果不運行服務器,那么只需要客戶機,以便能夠連接到其他機器的服務器上。
    如果您確實運行一個服務器,將希望能夠從該服務器的主機對此服務器進行連接,而不是在其他具有客戶機軟件的機器上登錄,然后再來測試您的服務器。

mysql安裝綜述

    在unix 上安裝mysql涉及下列步驟:
    1) 創建一個用戶的unix 賬號和服務器將操縱的組(如果正在安裝服務器)。
    2) 獲得和打開想安裝的分發包。如果使用的是源代碼分發包,編譯并安裝它。
    3) 運行mysql_install_db 腳本來初始化數據目錄和權限表(僅允許第一次安裝)。
    4) 啟動服務器。
    5) 參閱第11章,熟悉一般的管理過程。特別應該閱讀服務器設置和關閉以及作為無特權用戶運行服務器的段落。

創建mysql用戶賬號

    如果只需要運行mysql客戶機軟件,而不打算運行mysql服務器,可以跳過這一節。
    mysql服務器可作為系統上的任何unix 用戶運行,但出于安全和保密的原因,最好是不以root 身份運行服務器。建議創建一個獨立的賬號用于mysql管理,并以該用戶運行服務器。這樣,可作為該用戶登錄,并在進行維護和故障排除的目錄中具有完全的權限。創建
用戶賬號的過程隨系統的不同而不同。詳細內容可參閱相應的文獻。
    本書將mysqla d m和mysqlg r p分別用于unix 用戶和此賬號的組名。如果打算安裝mysql只為自己使用,可以自己運行它,那么在本書中任何地方出現的mysqladm 和mysqlg r p都可換成您自己的登錄名和組名。如果從rpm 文件進行安裝,隨rpm 的安裝過程會自動建立一個名為mysql的用戶。在這樣的情況下,可以將mysql替換成mysqla d m。
    使用獨立、無特權帳戶而不是運行mysql的r o o t,其優點為:
    如果不以root 運行mysql,任何人都不能利用此服務器的安全漏洞獲得root 訪問。
    無特權的用戶執行mysql管理任務比用root 執行更為安全。
    服務器將創建mysqladm 而非root 擁有的文件。r o o t在系統上擁有的文件越少越好。
    將mysql的活動分隔在它自己的賬號中可以在概念上更為清晰,并且更容易看出系統上什么東西與mysql相關。例如,在保存core 文件的目錄中,有mysql用戶mysqladm 的一個獨立文件。否則mysql的corn 作業將位于root 的文件中,將會和其他東西一起作為root 周期性的執行。

獲得和安裝mysql分發包

    在下面的說明中,我們用版本代表mysql的版本號,用平臺代表在其上進行安裝的平臺名。它們也用在分發包文件名中,以便容易標識分發包,并將各個分發包區分開來。版本號是一些類似于3.22.26 或3.23.4-alpha 這樣的東西,平臺名是類似于sgi-irix6.3-mips 或d e c -osf4-0b-alpha 這樣的東西。
    1. 安裝二進制代碼分發包
    二進制代碼分發包文件具有諸如m s q l -ver s i o n - p l a t f o r m. t a r.gz 這樣的名字。獲得理想版本和平臺的分發包文件并將它放入指定的安裝mysql目錄,如/ us r / l o c a l。
    用下面的任意一條命令打開分發包(如果tar 版本不支持非壓縮分發包的z 選項,應該使用第二條命令):
    % tar zxf mysql-version-platform.tar.gz
    % gunzip < mysql-version-platfrom.tar.gz | tar xf
    打開分發包創建包含分發包內容的目錄mysql-ver s i o n - p l a t f o r m。為了更容易引用這個目錄,可創建一個符號連接:
    % ln -s mysql-version-platorm mysql    現在,如果在/usr/local 目錄下安裝mysql,可引用的安裝目錄為/ us r / l o c a l / mysql。
    如果只準備使用分發包所提供的客戶機支持環境并且不運行服務器,則安裝結束。如果是第一次安裝mysql,可參閱a . 3 . 4節“初始化數據目錄和權限表”。如果是對已有安裝進行更新,可參閱a . 3 . 5節“啟動服務器”。
    2. 安裝rpm 分發包
    rpm 文件可用于linux 系統上的mysql安裝。它們具有如下的文件名:
    mysql-ver s i o n - p l a t f o r m.rpm 服務器軟件。
    mysql- c l i e n t. ver s i o n - p l a t f o r m.rpm 客戶機程序。
    mysql- d e v e l .ver s i o n - p l a t f o r m.rpm 編寫客戶機程序的開發支持環境(客戶機庫和頭文件)。如果想使用或編寫訪問mysql數據庫的perl dbi 腳本,則需要用到它。
    mysql- b e n c h. ver s i o n - p l a t f o r m.rpm 標準和測試。需要perl 和msql-mysql-modules 模塊。可在w w w.mysql.com 上得到mysql-mysql-modules 的一個rpm 文件。
    mysql-ver s i o n .src.rpm 服務器、客戶機、標準和測試的源代碼。
    如果從rpm 安裝,不需要特定的目錄,因為rpm 文件含有指定將所包含的文件安裝在何處的信息。對任何rpm 文件r p m _ f i l e,可用下列命令知道其內容將安裝在何處:
    % rpm -qpl rpm_file
    為了安裝一個rpm 文件,使用下列命令:
    % rpm -i rpm_file
    mysql的各組成部分被劃分為不同的rpm 文件,因此可能需要安裝不止一個r p m。為了安裝客戶機支持環境,可使用下列命令:
    % rpm -i mysql-client-version-platform.rpm
    安裝服務器支持環境,使用下列命令:
    % rpm -i mysql-version-platform.rpm
    如果打算使用客戶機編程支持環境編寫自己的程序,應該安裝供開發用的rpm 文件:
    % rpm -i mysql-devel-version-platform.rpm
    如果打算使用分發包提供的客戶機支持環境,而且不準備使用服務器, mysql的安裝就結束了。如果是第一次安裝mysql,可參閱a . 3 . 4節“初始化數據目錄和權限表”。如果是對現有安裝進行更新,可參閱a . 3 . 5節“啟動服務器”。
    如果想從源代碼rpm 文件進行安裝,用下面的命令就可以了:
    % rpm --recompile mysql-version.src.rpm
    3. 安裝源代碼分發包
    源代碼分發包具有如mysql- ver s i o n . t a r.gz 這樣的名稱,其中version 為mysql的版本號。選擇想要將分發包放在其下的目錄,并進入該目錄。獲得分發包文件并用下列命令之一打開它(如果tar 版本不支持非壓縮分發包的z 選項,應該使用第二條命令):
    % tar zxf mysql-version.tar.gz
    % gunzip < mysql-version.tar.gz | tar xf
    打開分發包創建包含分發包內容的目錄mysql- ver s i o n,并進入此目錄。
    % cd mysql-version
    在安裝以前,需要配置和編譯此分發包。如果各步驟失敗,應該參閱mysql參考指南的“安裝mysql”一章,應該特別注意它所包含的有關各種機器專有的系統說明。
    使用configure 命令配置分發包:
    % ./configure
    可以為configure 指定選項。為了得到可用的選項表,執行下列命令:
    % ./configure --help
    下面的清單給出了一些許多人認為很有用的配置選項:
    ·--without-server 只建立客戶機支持環境的配置(客戶機程序或客戶機庫)。如果打算訪問運行在其他機器上的服務器,應該選擇此選項。
    ·--prefix = p a t h _ name 缺省時,安裝根目錄為/ us r / l o c a l。數據目錄、客戶機、服務器、客戶機庫以及頭文件安裝在根目錄下的v a r、b i n、l i b e x e c、lib 和include 目錄中。如果想要更改安裝的根目錄,使用--prefix 選項即可。
    ·--localstatedir = p a t h _ name 這個選項更改數據目錄的位置。如果不希望將數據庫保存在/usr/local/var 之下,可使用這個選項。
    ·--with-low-memory sql/sql_yacc.cc 源代碼文件需要大量編譯內存,這有時會導致安裝失敗。這個問題的表現包括有關“ fatal signal 11”或虛內存耗盡錯誤消息。- - w i t h - l o w - memory 選項用產生低內存消耗的選項來調用編譯程序。
    在執行了configure 后,編譯分發包并安裝它:
    % make
    % make install
    如果未利用--prefix 選項指定具有寫入許可的目錄,需要以root 身份執行安裝命令。
    如果只準備使用分發包所提供的客戶機支持環境且不運行服務器,則mysql的安裝結束。如果是第一次安裝mysql,可參閱a . 3 . 4節。如果是對已有安裝進行更新,可參閱a . 3 . 5 節“啟動服務器”。

初始化數據目錄和權限表

    在能夠利用mysql安裝之前,需要初始化含有控制網絡對服務器進行訪問的權限表的mysql數據庫。這個步驟只在新安裝以及打算運行服務器時需要。那些只進行客戶機支持環境安裝的人員可以跳過這一節。對于二進制代碼分發包,從安裝目錄(由分發包創建的b i n
目錄的父級目錄)執行命令。對于源代碼分發包,從分發包的高層目錄執行命令。
    data d i r 是數據目錄的路徑名。一般情況下,作為root 執行下列命令。如果作為mysqladm 登錄,或者由于打算自己運行mysql而在自己的賬號下安裝它,則可不以r o o t的身份執行命令,而且可以跳過chown 和chmod 命令。
    如下運行mysql_install_db 腳本設置缺省權限表(如果利用rmp 文件進行安裝,則不需要這樣做,因為mysql_install_db 將會自動運行):
    # scripts/mysql_install_db
    如果mysql_install_db 失敗,應該參閱mysql參考指南的“安裝mysql”一章,看看該章對于所遇到的問題是怎么說的,然后再試一次。注意,如果mysql_install_db 未成功完成,它所建立的任意權限表可能都是不完整的。應該刪除它們,因為mysql_install_db 不會試圖重建已經存在的表。可用如下語句刪除整個mysql數據庫。
    # rm -rf datadir/mysql    在運行mysql_install_db 之后,如果所安裝的是mysql3.22.10 以前的版本,應該關閉服務器(對于更新的版本, mysql_install_db 會自動完成這項工作):
    # bin/mysqladmin --user=root shutdown
    在服務器關閉后,更改用戶和組的擁有者該數據目錄下的所有文件模式:
    # chown -r mysqladm.mysqlgrp datadir
    # chmod -r go-rwx datadir
    chown 命令更改mysql用戶的擁有者,而chmod 更改模式把除mysqladm 外的所有人員都排斥在外。

啟動服務器

    這個步驟只在要運行服務器時需要。那些只需要客戶機的安裝可以跳過這一步。應該在前一節給出的相同目錄中執行本節的命令。一般作為root 用戶運行命令。如果作為mysqla d m用戶登錄,或者在自己的賬號下安裝mysql,那么可以不以r o o t身份運行命令,而且應該省略--user 選項。
    用下列命令啟動服務器:
    # bin/safe_mysqld --user=mysqladm &
    --user 選項告訴服務器作為mysqladm 運行。如果想啟用日志,使用下列命令:
    # bin/safe_mysqld--user=mysqladm --log &
    缺省的安裝允許mysqlroot 用戶不用口令進行連接。設口令是個好主意。還應該在系統啟動和關閉時,安排服務器啟動和關閉。此外,推薦使用更新日志,因為這對數據恢復過程是很有用的。對于完成這些活動的說明,請參閱第11章。

安裝perl dbi 支持環境

    如果想要編寫訪問mysql數據庫的perl 腳本,應該安裝dbi 軟件。dbi 要求已經安裝過mysql客戶機編程支持環境,因為它要使用mysqlc 客戶機庫。如果希望編寫基于web 的dbi 腳本,還可以安裝cgl.pm 模塊。dbi 軟件需要perl 的相當新的版本(5.004 或更新)。如果沒有安裝perl,請訪問http://www. per l . c o m /,下載perl 分發包,并在安裝dbi 支持環境前安裝它。
    dbi 支持環境需要三個模塊,可從源代碼或rpm 文件對它進行安裝:
    d a t a - d um per 方便地處理perl 數據結構的模塊。
    dbi 主dbi 驅動。
    msql-mysql-modules 連接到mysql服務器時,dbi 使用的mysql專用驅動。
    如果從源代碼進行安裝,應該按前面清單中給出的次序安裝這個模塊。否則,下面安裝說明中的測試步驟將會不正常。
    所有三個模塊的安裝都是類似的。在從源代碼進行安裝時,利用下面的某個命令打開分發包(如果tar 版本不支持非壓縮分發包的z 選項,應該使用第二條命令):
    % tar zxf dist_file.tar.gz
    % gunzip < dist_file.tar.gz | tar xf
    然后進入tar 命令創建的分發包目錄并運行下列命令(可能需要作為root 運行這些安裝步驟):
    % perl makefile.pl
    % make
    % make test
    % make install
    如果運行前面msql-mysql-modules 分發包的命令,在生成makefile 時,perl 命令將提出下列問題:
    ·which drivers do youwant to install? 存在mysql和msql 的各種組合選擇。除非還運行m sql,否則選擇mysql使其簡單化。
    ·do youwant to install the mysqlperl emulation? mysqlperl 是mysql的舊perl 接口,已經作廢。除非有舊的mysqlperl 腳本并希望在dbi 模塊中啟用仿真支持環境,否則回答為n o。
    ·where is your mysqlinstalled?這應該是包含mysql頭文件的祖父目錄,大概是/usr/local 或/ us r / l o c a l / mysql,除非將mysql安裝在非標準的位置才不是這樣。
    ·which database should i use for testing the mysqldrivers? 缺省為t e s t,除非關閉了對它的匿名訪問,否則這樣應該可以了。在關閉其匿名訪問時,需要給出一個您擁有訪問權的數據庫名,然后為后面的問題指定一個合法的mysql用戶名和口令。
    ·on which host is the database running? 如果運行的是一個本地服務器, localhost 就可以了。如果不行,指定一個您擁有訪問權的服務器主機。在執行make test 命令時,mysql服務器必須運行在這個主機上,否則測試將失敗。
    ·user name for connecting to the database?
    password for connecting to the database?
    為測試連接到mysql服務器的所用的用戶名和口令。缺省設置時,這兩個問題都可以回答un d e f。這樣將使驅動作為匿名用戶連接。如果需要非匿名連接,可指定非空值。
    如果安裝perl 模塊有問題,可參閱相應分發包的readme 文件以及dbi 郵件清單的郵件存檔文件,因為多數安裝問題的答案都可從該處找到。
    如果希望使用c g i . p m,它可能已經在perl 安裝中給出了。試運行命令perldoc cgi。如果顯示cgi 文檔,那么cgi 已經安裝。否則,取得相應的分發包,按與其他perl 模塊相同的說明打開并安裝。
    如果為了使用基于web 的dbi 腳本,希望安裝mod_perl apache 模塊,可訪問下列位置的apache web 站點的mod_perl 區,得到更多的信息:
    http://perl.apache.org/

安裝php 和apache

    按照下面的說明可以開始行動了。如果遇到問題,可查看php 分發包所含的i n s ta l l文件的“verbose insta l l”一節(閱讀該文件是個不壞的主意,它含有大量有用信息)。
    這些說明都假定您有一個apache 源代碼分發包可用,而且將作為一個apache 模塊運行php。還假定您具有apache 1.3.9 和php 3.0.12,而且位于這樣一個目錄中,在該目錄下可定位含有源代碼分發包的apache_1.3.9 和php-3.0.12 目錄。如果您擁有不同的版本或位置,在使用下列說明時,應該替換成您的實際版本號和路徑名。
    要配置和建立php,可從下列命令入手(這個過程看上去有點怪,因為要從apache 分發包開始,但它是對的):
    % cd apache_1.3.9
    % ./configure
    apache 的configure 命令是必須的,因為php 需要的某些頭文件是在配置時生成的。如果不在apache 分發包中運行configure ,php 配置過程將不能找到文件。在配置了apache后,進入php 分發包目錄,配置php,設置它,并安裝它。還可以安裝php 初始化文件的一個拷貝:

    php 的configure 命令告訴php 您想要mysql支持環境,并指出apache 源代碼位于何處。--enable-track-vars 選項將窗口輸入的自動轉換轉入可從php 頁內部容易地訪問的變量內。make 命令編譯和安裝php。有可能需要作為root 安裝初始化文件p h p 3 . i n i。
    在作為一個模塊建立php 時,直接拷貝相應模塊到apache 源代碼樹來安裝它,以便可將它連接進apache 二進制代碼內。在完成后,可按如下編譯和安裝apache:
    % cd ../apache_1.3.9
    % ./configure --activate-module=src/modules/php3/libphp3.a
    % make
    % make install
    這些步驟配置apache,以便知道php 模塊文件,然后建立和安裝它。應該編輯apache配置文件h t t p d . c o n f,以便apache 識別php 腳本。php 識別是基于php 腳本的文件擴展名進行的。例如,如果希望apache 識別.php 和. p h p 3,在配置文件中放入下面的兩行:
    addtype application/x-httpd-php3.php
    addtype application/x-httpd-php3.php3
    所用的后綴依賴于打算怎樣命名php 腳本。.php 和.php3 可能是最常用的。另一常用的后綴為. p h t m l。如果愿意,可以將它們都啟用。如果打算安裝從使用這些擴展名的其他人那里得到的頁面,最好都啟用它們。
    還可以告訴apache 在url 的結尾處未指定文件名時,將index.php 或index.php3 作為某個目錄的缺省文件。您可能會在配置文件中發現如下的行:
    directoryindex index.html
    將其更改如下:
    directoryindex index.html index.php index.php3
    在編輯apache 配置文件后,結束httpd 服務器(如果有一個正在運行),然后啟動剛安裝的新h t t p d。在許多系統中,下面的命令(以root 執行)完成此工作:
    # /usr/local/apache/bin/apachectl stop
    # /usr/local/apache/bin/apachectl start
    還應該設置apache 在系統啟動和關閉時啟動和關閉。相應的說明請參閱apache 文檔。一般情況下,它包括導入時運行apachectl start,以及關閉時運行apachectl stop。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 德格县| 海城市| 平江县| 镇雄县| 云阳县| 东港市| 六安市| 新密市| 沙坪坝区| 阳春市| 荆州市| 蓬莱市| 乌鲁木齐县| 赞皇县| 兴山县| 都兰县| 中江县| 阿鲁科尔沁旗| 独山县| 汪清县| 应城市| 于田县| 南木林县| 楚雄市| 宜宾市| 武胜县| 福贡县| 辰溪县| 太和县| 四子王旗| 诸暨市| 鄂托克前旗| 时尚| 靖安县| 福鼎市| 资兴市| 临湘市| 莱芜市| 资兴市| 栾川县| 二连浩特市|