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<strong> </strong>
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初始化數據庫
執行前需賦給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
我的解決方法是:
[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