1.假設已經有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz兩個原始檔
(1)先安裝cmake(mysql5.5以後是通過cmake來編譯的)
[root@ rhel5 local]#(2)建立mysql的安裝目錄及資料庫存放目錄tar -zxv -f cmake-2.8.4.tar.gz
[root@ rhel5 local]#
cd cmake-2.8.4
[root@ rhel5 cmake-2.8.4]#
./configure
[root@ rhel5 cmake-2.8.4]#
make
[root@ rhel5 cmake-2.8.4]#
make install
[root@ rhel5~]#(3)建立mysql使用者及使用者組mkdir -p /usr/local/mysql //安裝mysql
[root@ rhel5~]#
mkdir -p /usr/local/mysql/data //存放資料庫
[root@ rhel5~]groupadd mysql(4)安裝mysql[root@ rhel5~]useradd -r -g mysql mysql
[root@ rhel5 local]#tar -zxv -f mysql-5.5.10.tar.gz
[root@ rhel5 local]#
cd mysql-5.5.10
[root@ rhel5 mysql-5.5.10]#
cmake .
-dcmake_install_prefix=/usr/local/mysql
-dmysql_datadir=/usr/local/mysql/data
-ddefault_charset=utf8
-ddefault_collation=utf8_general_ci
-dextra_charsets=all引數說明:-denabled_local_infile=1
[root@ rhel5 mysql-5.5.10]#
make
[root@ rhel5 mysql-5.5.10]#
make install
-dcmake_install_prefix=/usr/local/mysql //安裝目錄
-dinstall_datadir=/usr/local/mysql/data //資料庫存放目錄
-ddefault_charset=utf8 //使用utf8字元
-ddefault_collation=utf8_general_ci //校驗字元
-dextra_charsets=all //安裝所有擴充套件字符集
-denabled_local_infile=1 //允許從本地匯入資料
注意事項:
重新編譯時,需要清除舊的物件檔案和快取資訊。
# make clean
# rm -f cmakecache.txt
# rm -rf /etc/my.cnf
2.配置
(1)設定目錄許可權
[root@ rhel5~]#(2)cd /usr/local/mysql
[root@ rhel5 mysql]#
chown -r root:mysql . //把當前目錄中所有檔案的所有者所有者設為root,所屬組為mysql
[root@ rhel5 mysql]#
chown -r mysql:mysql data
[root@ rhel5 mysql]#(3)建立系統資料庫的表cp support-files/my-medium.cnf /etc/my.cnf //將mysql的啟動服務新增到系統服務中
[root@ rhel5 mysql]#(4)設定環境變數cd /usr/local/mysql
[root@ rhel5 mysql]#
scripts/mysql_install_db --user=mysql
[root@ rhel5~]#(5)手動啟動mysqlvi /root/.bash_profile
在path=$path:$home/bin新增引數為:
path=$path:$home/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
[root@ rhel5~]#
source /root/.bash_profile
[root@ rhel5~]#(6)另一種簡單的啟動mysql的方法(mysql已經被新增到系統服務中)cd /usr/local/mysql
[root@ rhel5 mysql]#
./bin/mysqld_safe --user=mysql & //啟動mysql,但不能停止
啟動日誌寫在此檔案下:/usr/local/mysql/data/localhost.err
關閉mysql服務
[root@ rhel5 mysql]#
mysqladmin -u root -p shutdown //這裡mysql的root使用者還沒有配置密碼,所以為空值。需要輸入密碼時,直接點回車鍵即可。
[root@ rhel5~]#如果上述命令出現:mysql.server 未識別的服務service mysql.server start
[root@ rhel5~]#
service mysql.server stop
[root@ rhel5~]#
service mysql.server restart
則可能mysql還沒新增到系統服務中,下面用另一種方法新增:
[root@ rhel5 mysql]# cp support-files/mysql.server /etc/init.d/mysql //注意:主要是將mysql.server拷貝到/etc/init.d中,命名為mysql。在有的系統中,mysql.server在/usr/local/mysql/share/mysql/mysql.server中,而本系統中,mysql.server在/usr/local/mysql/support-files/mysql.server中。將mysql的啟動服務新增到系統服務中
然後再用#service mysql start 來啟動mysql即可。
(7)修改mysql的root使用者的密碼以及開啟遠端連線
[root@ rhel5~]#注:如果不能遠端連線,出現錯誤mysql error number 1130,則加入下面語句試試:mysql -u root mysql
mysql>use mysql;
mysql>desc user;
mysql> grant all privileges on *.* to root@"
%" identified by "
root
"; //為root新增遠端連線的能力。
mysql>update user set password = password('******') where user='root';
mysql>select host,user,password from user where user='root';
mysql>flush privileges;
mysql>exit
重新登入:mysql -u root -p
若還不能進行遠端連線,則關閉防火牆
[root@ rhel5~]#
/etc/rc.d/init.d/iptables stop
mysql>grant all privileges on *.* to 'root'@'%' identified by '******' with grant option;
linux 原始碼安裝 mysql
系統centos 建立使用者 groupadd mysql useradd r g mysql s bin false mysql 建立資料儲存目錄 mkdir p data mysql db chown r mysql mysql data mysql db 安裝cmake 用來編譯 安裝編譯器等...
linux原始碼安裝mysql
首先原始碼安裝mysql需要搭建本地yum源,在上一節已經說過了,如果能聯網則不需要搭建。以下是安裝包的目錄結構,config目錄是配置檔案也就是my.cnf,這裡可以配置,安裝時將此檔案內容替換為 etc my.cnf soft目錄存放的是mysql的安裝tgr.gz包 將檔案都上傳到伺服器,使用...
Linux原始碼安裝MySQL
b 安裝詳情 c 編譯安裝 d 配置mysql環境變數 e 初始化系統資料庫 f 啟動服務 mysql使用cmake跨平台工具預編譯原始碼,用於設定mysql的編譯引數。如 安裝目錄 資料存放目錄 字元編碼 排序規則等。安裝最新版本即可。mysql原始碼中用到了c 的boost庫,要求必須安裝boo...