首頁 > 數據庫 > MySQL > 正文

CentOS 6.7下源碼編譯安置MySQL 5.7.5

2022-08-01 18:57:26
字體:
來源:轉載
供稿:網友
       CentOS 6.7下源碼編譯安置MySQL 5.7.5:

1. 安裝相關工具
      # yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison
 
2. 清理環境
     檢查boost版本:
     # rpm -qa boost*
     卸載boost-*等庫:
      # yum -y remove boost-*
 
3. mysql源碼包下載
 
4. 創建mysql用戶,組及目錄
# groupadd mysql
# mkdir /home/mysql
# mkdir /home/mysql/data
# useradd -g mysql -d /home/mysql
 
5. 注意事項
從MySQL 5.7.5開始Boost庫是必需的,下載Boost庫,在解壓后復制到/usr/local/boost目錄下,然后重新cmake并在后面的選項中加上選項 -DWITH_BOOST=/usr/local/boost
(下載:http://sourceforge.net/projects/boost/files/boost/)
需求boost1.57.0
wget -c http://liquidtelecom.dl.sourceforge.net/project/boost/boost/1.57.0/boost_1_57_0.tar.gz
 
6. 新版本的mysq用cmake編譯安裝
解壓mysql源碼包mysql-5.7.5-m15.tar.gz
# tar -xzvf mysql-5.7.5-m15.tar.gz
以下操作在解壓后的源碼包的根目錄執行
cmake編譯
# cmake -DCMAKE_INSTALL_PREFIX=/home/mysql -DMYSQL_DATADIR=/home/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
常用參數:
CMAKE_INSTALL_PREFIX:指定MySQL程序的安裝目錄,默認/usr/local/mysql
DEFAULT_CHARSET:指定服務器默認字符集,默認latin1
DEFAULT_COLLATION:指定服務器默認的校對規則,默認latin1_general_ci
ENABLED_LOCAL_INFILE:指定是否允許本地執行LOAD DATA INFILE,默認OFF
WITH_COMMENT:指定編譯備注信息
WITH_xxx_STORAGE_ENGINE:指定靜態編譯到mysql的存儲引擎,MyISAM,MERGE,MEMBER以及CSV四種引擎默認即被編譯至服務器,不需要特別指定。
WITHOUT_xxx_STORAGE_ENGINE:指定不編譯的存儲引擎
SYSCONFDIR:初始化參數文件目錄
MYSQL_DATADIR:數據文件目錄
MYSQL_TCP_PORT:服務端口號,默認3306
MYSQL_UNIX_ADDR:socket文件路徑,默認/tmp/mysql.sock
編譯安裝
# make && make install
出錯后重新運行配置,需要刪除CMakeCache.txt文件
# make clean
# rm -f CMakeCache.txt
 
7. 設置權限并初始化MySQL系統授權表
設置權限
# cd /home/mysql
# chown -R mysql .
# chgrp -R mysql .
以root初始化操作時要加-user=mysql參數,生成一個隨機密碼(注意保存登錄時用)
# cd /home/mysql
# bin/mysqld --initialize --user=mysql --basedir=/home/mysql --datadir=/home/mysql/data
 
8. 創建配置文件
將默認生成的my.cnf備份
# mv /etc/my.cnf /etc/my.cnf.bak
進入mysql的安裝目錄支持文件目錄
# cd /home/mysql/support-files
拷貝配置文件模板為新的mysql配置文件,
# cp my-default.cnf /etc/my.cnf
可按需修改新的配置文件選項, 不修改配置選項, mysql則按默認配置參數運行.
如下是我修改配置文件/etc/my.cnf, 用于設置編碼為utf8以防亂碼
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
 
[client]
default-character-set=utf8
 
9. 配置mysql服務開機自動啟動
拷貝啟動文件到/etc/init.d/下并重命令為mysqld
# cp /home/mysql/support-files/mysql.server /etc/init.d/mysql
增加執行權限
# chmod 755 /etc/init.d/mysqld
檢查自啟動項列表中沒有mysqld這個,如果沒有就添加mysqld:
# chkconfig --list mysqld
# chkconfig --add mysqld
設置MySQL在345等級自動啟動
# chkconfig --level 345 mysqld on
或用這個命令設置開機啟動:
# chkconfig mysqld on
 
10. mysql服務的啟動/重啟/停止
啟動mysql服務
# service mysqld start
重啟mysql服務
# service mysqld restart
停止mysql服務
# service mysqld stop
 
11. 訪問mysql數據庫
連接mysql, 輸入初始化生成的隨機密碼
# mysql -uroot -p
修改root新密碼如 123456
mysql> alter user 'root'@'localhost' identified by '123456';
mysql> quit;
mysql> exit;(與上等效, 都是退出mysql連接)
使用新密碼重新連接mysql
# mysql -uroot -p

(編輯:錯新網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
金玫玫床戏