安裝環境:VMware9(橋接模式) + Linux bogon 2.6.32-642.3.1.el6.x86_64(查看linux版本信息:uname -a)
先給出MySQL For Linux 源碼下載地址,是xx.tar.zg格式的,如下: http://www.filewatcher.com/m/mysql-5.0.45.tar.gz.24433261.0.0.html
一、源碼包安裝mysql。
-------------預備工作----------
1:假如下載的文件名為:mysql-5.0.45.tar.gz
2:copy到 /usr/local/software下(軟件包統一放置到該目錄下)
3:groupadd mysql #添加mysql組
4:useradd -g mysql mysql -s /bin/false #創建用戶mysql並加入到mysql組,不允許mysql用戶直接登錄系統
mkdir -p /usr/local/mysql #創建MySQL安裝目錄
mkdir -p /usr/local/mysql/var #創建MySQL數據庫存放目錄
chown -R mysql:mysql /usr/local/mysql/var #設置MySQL數據庫目錄權限
chown -R mysql:mysql /usr/local/mysql #設置MySQL數據庫目錄權限
5:cd /usr/local/software #進入到該目錄
-----------------------編譯過程-----------------------
6:tar -zxvf mysql-5.0.45.tar.gz #解壓後,在該目錄下會出現一個同名的文件夾
7:cd /usr/local/software/mysql-5.0.45
8:./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=latin1
注意(參數講解):
--prefix=/usr/local/mysql ==> 指定mysql的安裝目錄。
--with-charset=utf8 ==> 指定mysql的默認字符集
--with-collation=utf8_general_ci ==> 指定mysql的默認字符集
--with-extra-charsets=latin1 ==> 添加額外的編碼,為了省事,一般就寫all了
9:make
10:make install
11:cp support-files/my-medium.cnf /etc/my.cnf #拷貝配置文件。如果/etc/my.cnf已存在,則先備份,再刪除
12:vi /etc/my.cnf #將log-bin=mysql-bin注釋掉(關閉binlog日志)
----------------------------安裝並初步配置mysql--------------------------
13:cd /usr/local/mysql
14:bin/mysql_install_db --user=mysql --datadir=/usr/local/mysql/var #安裝系統數據庫
15:bin/mysqld_safe --user=mysql & #啟動mysql服務
-----------------------------------------更改mysql的root用戶密碼----------------------------
16:bin/mysqladmin -uroot password 123456 #在mysql正常啟動的情況下,更改root用戶的登錄密碼
17:bin/mysql -uroot -p #輸入此命令後,會提示你輸入root用戶密碼123456
18:show databases; #如果查出所有數據庫,說明mysql數據庫已經成功安裝。
------------------------------------------------------把mysql加入到系統服務中(開機自啟動)-------------------------------------
19:cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld #加入到系統服務中,就可以通過service mysqld start|stop|status|restart等進行管理,很是方便,就不用再到/usr/local/mysql5.0.45/bin/啟動mysql了。
注意: mysql.server ==>該腳本主要用於使用系統V-style運行目錄的系統的啟動和關閉,它通常安裝到mysql下。mysql.server腳 本調用mysqld_safe來啟動服務器。
------------------------------------------------------------------配置 mysql環境變量------------------------------------------------
20:cd /root #回到你的個人主目錄,我這裡是用root登陸的
cp .bashrc .bashrc.bak #備份一下吧
vi .bashrc
在最後加入:export PATH=/usr/local/mysql/bin:$PATH:.
source ~/.bashrc #回到終端再輸入此命令,以使剛修改的起作用,~代表用戶主目錄 source命令用法: source FileName 作用:在當前bash環境下讀取並執行FileName中的命令。
注:該命令通常用命令“.”來替代。 如:source .bash_rc 與 . .bash_rc 是等效的。 注意:source命令與shell scripts的區別是, source 在當前bash環境下執行命令,而scripts是啟動一個子shell來執行命令。這樣如果把設置環境變量(或 alias等等)的命令寫進 scripts中,就只會影響子shell,無法改變當前的BASH,所以通過文件(命令列)設置環境變量 時,要用source 命令。
env #查看一下是否生效(顯示系統中已存在的環境變量)
21:此是用來替換20步的一種方法
cp /usr/local/mysql/bin/mysql /usr/bin/mysql #把mysql常用的工具目錄加入到系統變量目錄中去,自己選擇性加,這樣做主要是可以直接運行該工具,而不需要切換到該 目錄下,類似於添加環境變量了。
------------------------------------------------------------------------------- 讓Linux開放3306端口-------------------------------------------
22:service iptables stop #關閉防火牆
vi /etc/sysconfig/iptables #編輯防火牆配置
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
service iptables start #開啟防火牆
------------------------------------------------------------------------------- 給root用戶開啟mysql遠程訪問權限--------------------------------------------
23:shutdown -hr now #重啟虛擬機。
ps -ef | grep mysql #查看mysql是否已隨開機啟動,或者輸入:service mysqld status。
mysql -uroot -p #進入mysql,並輸入密碼。
grant all on *.* to root@'%' identified by '123456'; #grant 權限 on 數據庫名.表名 to 用戶@登錄主機 identified by "用戶密碼";
flush privileges; #為了開發方便,可以讓root用戶具有遠程訪問的權限(%就是允許遠程登錄的意思)
#最後,再附上一個很好用的mysql客戶端,http://download.csdn.net/source/924456
二、默認的mysql數據庫目錄是 /usr/local/mysql/var
我們在安裝時指定了安裝目錄為/usr/local/mysql,除了在這裡安裝所要的文件外,還有一部分用戶常用的,可執行二進制文件被放到了/usr/bin中,其實,在/usr/local/mysql/bin下,全都有這些命令了,之所以要在/usr/bin中把那幾個命令考過來,就是為了方便,相當於設置環境變量了,你可以echo $PATH一下,裡面一定有/usr/bin這個值的。 明白了安裝過程,刪除mysql也就不足為難了