Linux 源碼編譯安裝 MySQL 5.5.x,mysql5.5.x

來源:互聯網
上載者:User

Linux 源碼編譯安裝 MySQL 5.5.x,mysql5.5.x

Linux 環境:CentOS 6.5

MySQL 版本:5.5.20,附:【點擊下載】

1、安裝cmake

MySQL從5.5版本開始,通過./configure進行編譯配置方式已經被取消,取而代之的是cmake工具。

因此,我們首先要在系統中源碼編譯安裝cmake工具。

下載 cmake

[root@ruxingli soft]# wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz

解壓

[root@ruxingli soft]# tar zxvf cmake-2.8.4.tar.gz

[root@ruxingli soft]# cd cmake-2.8.4[root@ruxingli cmake-2.8.4]# ./configure[root@ruxingli cmake-2.8.4]# make && make install

2、確保以下所需系統軟體包已經被安裝

通過 rpm -qa | grep name 的方式驗證以下軟體包是否已全部安裝。

gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool*

如果缺少相關的軟體包,可通過yum -y install 的方式線上安裝,或直接從系統安裝光碟片中找到並通過rpm -ivh 的方式安裝。

3、安裝前的系統測試

建立mysql安裝目錄及資料存放目錄

[root@ruxingli cmake-2.8.4]# mkdir -p /usr/local/mysql5.5.20

建立使用者和使用者組

[root@ruxingli cmake-2.8.4]# groupadd mysql
[root@ruxingli cmake-2.8.4]# useradd -g mysql mysql

賦予資料存放目錄許可權

[root@ruxingli mysql-5.5.20]# chown mysql:mysql -R /usr/local/mysql5.5.20/

4、編譯安裝MySQL5.5.20

[root@ruxingli soft]# tar zxvf mysql-5.5.20.tar.gz[root@ruxingli soft]# cd mysql-5.5.20

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.5.20/ -DSYSCONFDIR=/etc/ -DMYSQL_DATADIR=/usr/local/mysql5.5.20/data/ -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql -DEXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_SSL=bundled

可能出現的錯誤:


解決方案:

[root@ruxingli mysql-5.5.20]# yum install bison


解決方案:

去掉 -DMYSQL_USER=mysql

[root@ruxingli mysql-5.5.20]# make[root@ruxingli mysql-5.5.20]# make install

配置並初始化資料庫

建立 my.cnf 設定檔

[root@ruxingli3 mysql5.5.20]# cp support-files/my-medium.cnf /etc/my.cnf

執行前需賦給scripts/mysql_install_db檔案執行許可權

[root@ruxingli mysql-5.5.20]# chmod 755 scripts/mysql_install_db[root@ruxingli mysql-5.5.20]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql5.5.20/ --datadir=/usr/local/mysql5.5.20/data/

建立管理MySQL資料庫的shell指令碼

[root@ruxingli mysql-5.5.20]# mkdir /usr/local/mysql5.5.20/init.d[root@ruxingli mysql-5.5.20]# cp support-files/mysql.server /usr/local/mysql5.5.20/init.d/mysql

賦予shell指令碼可執行許可權:

[root@ruxingli mysql-5.5.20]# chmod +x /usr/local/mysql5.5.20/init.d/mysql
啟動MySQL

[root@ruxingli mysql-5.5.20]# /usr/local/mysql5.5.20/init.d/mysql start

如果啟動失敗,請參考http://blog.csdn.net/zalion/article/details/9274263

我的解決方案是:

[root@ruxingli3 mysql]# rm -rf /var/lock/subsys/mysql

通過命令列來管理MySQL伺服器

[root@ruxingli3 mysql5.5.20]# /usr/local/mysql5.5.20/bin/mysql
為 root 賬戶設定初始密碼

[root@ruxingli3 mysql5.5.20]# /usr/local/mysql5.5.20/bin/mysqladmin -u root password '123456'
進入命令列MySQL

[root@ruxingli3 mysql5.5.20]# /usr/local/mysql5.5.20/bin/mysql -u root -p123456

刪除本機匿名串連的空密碼帳號

mysql> use mysql;mysql> delete from user where password='';mysql> flush privileges;mysql> select Host,User,Password from user;mysql> exit


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.