CnetOS 下編譯安裝 MySQL

來源:互聯網
上載者:User

CnetOS 下編譯安裝 MySQL

CnetOS 下編譯安裝 MySQL

查看是否存在舊版本:

rpm -qa | grep mysql

卸載舊版本:

rpm -e mysql  #普通刪除模式

rpm -e --nodeps mysql  #強力刪除模式,如果使用上面命令刪除時,提示有依賴的其它檔案,則用該命令可以對其進行強力刪除

安裝編譯代碼需要的包

yum -y install make

yum –y install gcc-c++

yum –y install cmake

yum –y install bison-devel

yum –y install ncurses-devel

解壓源碼:

tar –zxvf mysql-5.5.20.tar.gz

cd mysql-5.5.20

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 \

-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \

-DSYSCONFDIR=/etc \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_MEMORY_STORAGE_ENGINE=1 \

-DMYSQL_TCP_PORT=3306 \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_PARTITION_STORAGE_ENGINE=1 \

加粗部分為必須

參數說明:

-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

查看編譯是否正確完成

echo $? #返回0表示正確完成

編譯並安裝

make && make install

echo $? #查看是否成功安裝.

配置mysql

使用下面的命令查看是否有mysql使用者及使用者組

cat /etc/passwd 查看使用者列表

cat /etc/group  查看使用者組列表

如果沒有就建立

groupadd mysql

useradd -g mysql mysql

配置目錄許可權

cd /usr/local/lamp/mysql/

chown -R root:mysql . #把目前的目錄中所有檔案的所有者所有者設為root,所屬組為mysql

chown -R mysql:mysql data

將mysql的啟動服務添加到系統服務中

cp support-files/my-medium.cnf /etc/my.cnf

建立系統資料庫的表

cd /usr/local/lamp/mysql

scripts/mysql_install_db

設定環境變數

vi /root/.bash_profile

        在PATH=$PATH:$HOME/bin添加參數為:

        PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib

source /root/.bash_profile 生效檔案

啟動MySQL

cp support-files/mysql.server /etc/init.d/mysqld

chkconfig –add mysqld

service mysqld start  --啟動MySQL

修改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';

 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

新增使用者後,出現新使用者無法登陸的情況時候,登陸資料庫,刪除空使用者就可以登陸。

delete from user where user is null;

delete from user where user='';

FLUSH PRIVILEGES;

CentOS 6.4下編譯安裝MySQL 5.6.14 

本文永久更新連結地址:

相關文章

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.