筆記編者:小波/QQ463431476博客首頁:http://www.CUOXin.com/xiaobo-linux/
記下這篇mysql筆記,望日后有用!
redhat6采用centos yum源,詳解mysql的源碼安裝以及配置。這里繼續上篇的博客php,Apache的配置,現在寫MySQL的配置。lamp搭建到此成功!
Apache源碼安裝的筆記:http://www.CUOXin.com/xiaobo-Linux/p/4637056.html
php源碼安裝的筆記:http://www.CUOXin.com/xiaobo-Linux/p/4637775.html
現在開始寫MySQL的源碼安裝以及配置:
1、安裝mysql依賴:
yum install cmakeyum 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 mysqluseradd -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=/work/installed/mysql //安裝目錄-DINSTALL_DATADIR=/work/installed/mysql/data //數據庫存放目錄-DDEFAULT_CHARSET=utf8 //使用utf8字符-DDEFAULT_COLLATION=utf8_general_ci //校驗字符-DEXTRA_CHARSETS=all //安裝所有擴展字符集-DENABLED_LOCAL_INFILE=1 //允許從本地導入數據
下面依次執行:
makemake 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/make clean all# 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:/work/installed/mysql/bin:/work/installed/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 mysqlmysql>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若還不能進行遠程連接,則關閉防火墻# /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配置:http://www.CUOXin.com/xiaobo-Linux/p/4637775.html
Apache配置:http://www.CUOXin.com/xiaobo-Linux/p/4637056.html
然后在php的源碼解壓包里面執行:
make
make install
最后重啟Apache:在Apache安裝好的目錄下執行restart:/work/installed/apache/bin/apachectl restart
12-2、在Apache的發布主頁的目錄下編寫index.php這個文件。
我的發布目錄是:/home/web/index.php
編寫php:vim index.php:
內容如下,目的是讓它顯示剛剛插入的TOM的數據:
<?php $mysql=new mysql(); $mysql->connect('localhost','root','mysql','test1'); // 創建查詢 $sqlstr='select * from student'; //發送查詢給MySql $result=$mysql->query($sqlstr); while($row=$result->fetch_object()) { $name=$row->name; echo $name; }?>
再重啟一下Apache吧:
./apachectl restart
如果顯示Tom的話說明mysql成功!
到此mysql安裝完成!lamp===Apache+mysql+php也搭建成功!
新聞熱點
疑難解答