Linux下MySQL源碼包手動安裝、配置以及測試(親測可行)
記下這篇MySQL筆記,望日後有用!RedHat Linux 6採用CentOS yum源,詳解mysql的源碼安裝以及配置。這裡繼續上篇的部落格php,Apache的配置,現在寫MySQL的配置。lamp搭建到此成功!
Apache源碼安裝的筆記:
PHP源碼安裝的筆記:
現在開始寫MySQL的源碼安裝以及配置:
1、安裝mysql依賴:
yum install cmake
yum install ncurses-devel
2、下載MySQL的源碼安裝包並解壓:
mysql: http://distfiles.macports.org/mysql5/
tar -zxvf mysql-5.5.21.tar.gz
3、建立mysql的安裝目錄及資料庫存放目錄
mkdir -p /work/installed/mysql 安裝目錄
mkdir -p /work/installed/mysql/data 資料庫存放目錄
4、建立mysql使用者及使用者組
groupadd mysql
useradd -r -g mysql mysql
5、安裝MySQL:
進入解壓包檔案夾內執行:
cmake . -DCMAKE_INSTALL_PREFIX=/work/installed/mysql -DMYSQL_DATADIR=/work/installed/mysql/data -DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1
cmake . -DCMAKE_INSTALL_PREFIX=/work/installed/mysql -DMYSQL_DATADIR=/work/installed/mysql/data -DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1
其中:/work/installed/mysql為MySQL的安裝目錄,這個可以自訂,自己喜歡裝哪就裝到哪裡。
參數說明:
-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
make install
如果出現錯誤:
錯誤: ./bin/mysqld: Character set 'utf8-DDEFAULT_COLLATION=utf8_general_ci' is not a compiled character set and is not specified in the '/work/installed/mysql/share/charsets/Index.xml' file
錯誤: ./bin/mysqld: Character set 'utf8-DDEFAULT_COLLATION=utf8_general_ci' is not a compiled character set and is not specified in the '/work/installed/mysql/share/charsets/Index.xml' file
是字元集和字元衝突了,所以編譯的時候要把字元和字元集選項都加上,並且要相容!修改編譯參數:
那麼執行此條命令:
cmake -DCMAKE_INSTALL_PREFIX=/work/installed/mysql -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EMBEDDED_SERVER=1 -DWITH_SSL=system
cmake -DCMAKE_INSTALL_PREFIX=/work/installed/mysql -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EMBEDDED_SERVER=1 -DWITH_SSL=system
注意,如果重新編譯或者編譯出錯了:
注意事項:
重新編譯時間,需要清除舊的對象檔案和緩衝資訊。
# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf
然後再:make , make install即可。
6、設定目錄許可權
在安裝好的mysql目錄下執行命令:
chown -R root:mysql . //把目前的目錄中所有檔案的所有者所有者設為root,所屬組為mysql
chown -R mysql:mysql data
7、將mysql的啟動服務添加到系統服務中
cp support-files/my-medium.cnf /etc/my.cnf
8、建立系統資料庫的表
scripts/mysql_install_db --user=mysql
9、設定環境變數
# vi /root/.bash_profile
在PATH=$PATH:$HOME/bin添加參數為:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
# source /root/.bash_profile
10、啟動mysql
法1:
在mysql安裝好的目錄下執行來啟動MySQL:
./bin/mysqld_safe --user=mysql &
開機記錄寫在此檔案下:/work/installed/mysql/data/localhost.err 目錄個人而異,自己的安裝目錄
法2:
cp support-files/mysql.server /etc/init.d/mysql //將mysql的啟動服務添加到系統服務中
# service mysql.server start
# service mysql.server stop
# service mysql.server restart
另外關閉MySQL服務的命令是:
mysqladmin -u root -p shutdown
11、修改MySQL的root使用者的密碼以及開啟遠端連線
# 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('xxxxxx') where User='root'; //這裡的XXXX為自己輸入的MySQL密碼,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
12、12-1、測試MySQL並將MySQL與php結合起來
登入mysql: mysql -u root -p
輸入密碼:mysql(輸入自己設定的mysql密碼)
下面建立資料庫,建立表,插入資料:
mysql> create database test1;
mysql> use test1;
mysql> create table student(id int(4) not null primary key auto_increment,name char(20));
mysql> insert into student(name) values('Tom');
這裡插入了TOM的名字,接下來配置php,以及編寫發布的首頁內容:
重新設定php:
./configure --prefix=/work/installed/php --with-apxs2=/work/installed/apache/bin/apxs --with-mysqli=/work/installed/mysql/bin/mysql_config
這裡的php安裝路徑是自己原來配置安裝好的,根據自己的情況而定。上一篇PHP配置:
Apache配置:
Ubuntu 14.04下安裝MySQL
《MySQL權威指南(原書第2版)》清晰中文掃描版 PDF
Ubuntu 14.04 LTS 安裝 LNMP Nginx\PHP5 (PHP-FPM)\MySQL
Ubuntu 14.04下搭建MySQL主從伺服器
Ubuntu 12.04 LTS 構建高可用分布式 MySQL 叢集
Ubuntu 12.04下原始碼安裝MySQL5.6以及Python-MySQLdb
MySQL-5.5.38通用二進位安裝
--------------------------------------分割線 --------------------------------------
本文永久更新連結地址:http://www.bkjia.com/Linux/2015-07/119785tm