cmake 安装mysql5.6_使用cmake在CentOS6.5安装MYSQL5.6
一、卸載CentOS6.5中已經(jīng)安裝的mysql版本和工具包的安裝
1、使用命令檢查是否安裝有MySQL Server,如果已經(jīng)安裝就卸載掉
[root@wlm?~]#?rpm?-qa?|?grep?mysql
mysql-server-5.1.73-7.el6.x86_64
mysql-connector-odbc-5.1.5r1144-7.el6.x86_64
mysql-5.1.73-7.el6.x86_64
mysql-devel-5.1.73-7.el6.x86_64
php-mysql-5.3.3-47.el6.x86_64
mysql-libs-5.1.73-7.el6.x86_64
卸載:
yum?remove?mysql?-y
2、安裝編譯源碼所需的工具和庫
yum?install?gcc?gcc-c++?ncurses-devel?perl?cmake
說明:從mysql5.5起,mysql源碼安裝開始使用cmake了,設(shè)置源碼編譯配置腳本。
也可以從cmake官網(wǎng)下載編譯安裝,步驟如下:
wget?http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
tar?-xzvf?cmake-2.8.10.2.tar.gz
cd?cmake-2.8.10.2
./bootstrap?;?make?;?make?install
二、添加MySQL用戶和組
新增mysql用戶組
groupadd?mysql
新增mysql用戶
useradd?-r?-g?mysql?mysql
三、創(chuàng)建MySQL所需要的目錄
新建mysql安裝目錄
mkdir?-p?/usr/local/mysql
創(chuàng)建mysql數(shù)據(jù)庫文件存放目錄
mkdir?-p?/data/mysqldb
四、下載MySQL源碼包并解壓
從官方網(wǎng)站下載源碼包,并解壓
wget?http://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.32.tar.gz
tar?-zxvf?mysql-5.6.32.tar.gz
cd?mysql-5.6.32.tar.gz
五、編譯安裝MySQL
從mysql5.5起,mysql源碼安裝開始使用cmake了,設(shè)置源碼編譯配置腳本。
設(shè)置編譯參數(shù)
cmake?-DCMAKE_INSTALL_PREFIX=/usr/local/mysql??-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock?-DDEFAULT_CHARSET=utf8?-DDEFAULT_COLLATION=utf8_general_ci?-DWITH_INNOBASE_STORAGE_ENGINE=1?-DWITH_ARCHIVE_STORAGE_ENGINE=1?-DWITH_BLACKHOLE_STORAGE_ENGINE=1?-DMYSQL_DATADIR=/data/mysqldb?-DMYSQL_TCP_PORT=3306?-DENABLE_DOWNLOADS=1
-DCMAKE_INSTALL_PREFIX=dir_name????設(shè)置mysql安裝目錄
-DMYSQL_UNIX_ADDR=file_name????????????? ?設(shè)置監(jiān)聽套接字路徑,這必須是一個絕對路徑名。默認(rèn)為/tmp/mysql.sock
-DDEFAULT_CHARSET=charset_name????設(shè)置服務(wù)器的字符集。缺省情況下,MySQL使用latin1的(CP1252西歐)字符集。cmake/character_sets.cmake文件包含允許的字符集名稱列表。也可以設(shè)置為UTF-8:-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=collation_name? 設(shè)置服務(wù)器的排序規(guī)則。
-DWITH_INNOBASE_STORAGE_ENGINE=1-DWITH_ARCHIVE_STORAGE_ENGINE=1-DWITH_BLACKHOLE_STORAGE_ENGINE=1-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
存儲引擎選項:MyISAM,MERGE,MEMORY,和CSV引擎是默認(rèn)編譯到服務(wù)器中,并不需要明確地安裝。靜態(tài)編譯一個存儲引擎到服務(wù)器,使用-DWITH_engine_STORAGE_ENGINE= 1,可用的存儲引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)
-DMYSQL_DATADIR=dir_name?????????????????????設(shè)置mysql數(shù)據(jù)庫文件目錄
-DMYSQL_TCP_PORT=port_num?????????????????設(shè)置mysql服務(wù)器監(jiān)聽端口,默認(rèn)為3306
-DENABLE_DOWNLOADS=bool????????????????????是否要下載可選的文件。例如,啟用此選項(設(shè)置為1),cmake將下載谷歌所使用的測試套件運行單元測試。
重新運行配置,需要刪除CMakeCache.txt文件
rm?-f?CMakeCache.txt
編譯安裝編譯源碼 && 安裝
make?&&?make?install
六、修改mysql目錄所有者和組
修改mysql安裝目錄
cd?/usr/local/mysql
chown?-R?mysql:mysql?.
修改mysql數(shù)據(jù)庫文件目錄
cd?/data/mysqldb
chown?-R?mysql:mysql?.
七、復(fù)制mysql服務(wù)啟動配置文件
cp?/usr/local/mysql/support-files/my-default.cnf?/etc/my.cnf??#文件存在則覆蓋
八、復(fù)制mysql服務(wù)啟動腳本及加入PATH路徑
cp?support-files/mysql.server?/etc/init.d/mysqld??#復(fù)制啟動腳本,若有則覆蓋
新建/etc/profile.d/mysql.sh,添加以下內(nèi)容保存退出,source一下
export?PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH?#設(shè)置變量
source?/etc/profile.d/mysql.sh
九、拷貝mysql目錄到系統(tǒng)目錄
cp?/usr/local/mysql/bin/mysql?/usr/bin/
/usr/local/mysql/scripts/mysql_install_db?--user=mysql?--datadir=/data/mysqldb
十一、啟動mysql服務(wù)并加入開機(jī)自啟動
service?mysqld?start
chkconfig?mysqld?on
十二、檢查mysql服務(wù)是否啟動
netstat?-tulnp?|?grep?3306???#查看3306端口是否監(jiān)聽
mysql?-u?root?-p??#登錄測試
十三、修改MySQL用戶root的密碼
mysqladmin?-u?root?password?'123456'
/usr/local/mysql/bin/mysql_secure_installation
#禁止root遠(yuǎn)程連接,移除test數(shù)據(jù)庫和匿名用戶
安裝中遇到的錯誤:
1、在官網(wǎng)下錯版本
源碼安裝要選Source Code
可以跳過注冊賬號,直接下載
2、MySQL服務(wù)器啟動錯誤 'The server quit without updating PID file'
修改/etc/my.cnf?中datadir,指向正確的mysql數(shù)據(jù)庫文件目錄
3、ERROR?2002?(HY000):?Can't?connect?to?local?MySQL?server?through?socket?'/tmp/mysql.sock'?(2)
新建一個鏈接或在mysql中加入-S參數(shù),直接指出mysql.sock位置。
ln?-s?/usr/local/mysql/data/mysql.sock?/tmp/mysql.sock
/usr/local/mysql/bin/mysql?-u?root?-S?/usr/local/mysql/data/mysql.sock
注:關(guān)于數(shù)據(jù)密碼設(shè)置,用戶創(chuàng)建,授權(quán)等基本操作
總結(jié)
以上是生活随笔為你收集整理的cmake 安装mysql5.6_使用cmake在CentOS6.5安装MYSQL5.6的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用diskpart命令修复U盘分区
- 下一篇: c++ try catch