安裝 scl devtoolset-7
scl(software collections)可以讓你在同乙個作業系統上安裝和使用多個版本的軟體,而不會影響整個系統的安裝包。scl為社群的以下需求而設計:建立和使用軟體集合生產系統、概念驗證系統、開發測試平台。scl目前已經支援fedora和rhel(衍生版本如centos也包含在內)
scl的建立就是為了給rhel/centos使用者提供一種以方便、安全地安裝和使用應用程式和執行時環境的多個(而且可能是更新的)版本的方式,同時避免把系統搞亂。與之相對的是第三方源,它們可能會在已安裝的包之間引起衝突
某些軟體在其上會編譯不過,自己編譯高版本的 gcc 可能也會遇到一些問題,比較麻煩。但有乙個第三方庫可以解決這個問題,即devtoolset
devtoolset 有很多版本,例如 devtoolset-2(gcc-4.8.2)、devtoolset-3(gcc-4.9.2)、devtoolset-4(gcc-5.2.1)。
mariadb 編譯 tokudb 引擎時會用到 c++11 標準,系統裡 gcc 最高版本 4.8.5 是支援 c++11 標準的,可就算指定了-dcmake_cxx_flags=-std=c++11
也不行。手動編譯更高版本的 gcc 又太麻煩,這裡直接安裝了 devtoolset-7,當然你禁用 tokudb 引擎也無可厚非
[root@sql1 ~]# yum -y install centos-release-scl devtoolset-7安裝依賴包[root@sql1 ~]# gcc --version
gcc (gcc) 4.8.5
20150623 (red hat 4.8.5-28
)2015
free software foundation, inc.
包括沒有適銷性和某一專用目的下的適用性擔保。
[root@sql1 ~]# scl enable devtoolset-7
bash
[root@sql1 ~]# gcc --version
gcc (gcc) 7.3.1
20180303 (red hat 7.3.1-5
)2017
free software foundation, inc.
this is
free software; see the source for
copying conditions. there is no
warranty; not even
for merchantability or fitness for a particular purpose.
# 安裝依賴包初始化安裝資料庫[root@sql1 ~]# yum
install -y gnutls-devel gcc
gcc-c++ cmake ncurses-devel bison-devel bison libaio-devel libevent libxml2-devel
# 建立mysql使用者和組
[root@sql1 ~]# useradd -m -s /sbin/nologin mysql
# 建立資料庫資料存放目錄
[root@sql1 ~]# mkdir /mydata/mariadb/ -p
[root@sql1 ~]# chown -r mysql.mysql /mydata
# 解壓、編譯、安裝mariadb
[root@sql1 ~]# tar xf tar mariadb-10.3.8.tar.gz -c /usr/src/[root@sqll ~]# cd /usr/src/mmariadb-10.3.8/[root@sqll mariadb-10.3.8]# cmake . -dcmake_install_prefix=/usr/local/mysql \
-dmysql_unix_addr=/tmp/mysql.sock \
-dmysql_datadir=/mydata/mariadb \
-dsysconfdir=/etc \
-dmysql_user=mysql \
-dmysql_tcp_port=3306
\ -dwith_xtradb_storage_engine=1
\ -dwith_innobase_storage_engine=1
\ -dwith_partition_storage_engine=1
\ -dwith_blackhole_storage_engine=1
\ -dwith_myisam_storage_engine=1
\ -dwith_readline=1
\ -denabled_local_infile=1
\ -dwith_extra_charsets=all \
-ddefault_charset=utf8 \
-ddefault_collation=utf8_general_ci \
-dextra_charsets=all \
-dwith_big_tables=1
\ -dwith_debug=0
\ && make -j4 && make -j4 install
[root@sql1 mariadb-10.3.8]# cd /usr/local/mysql/[root@sql1 mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/mydata/mariadb/[root@sql1 mysql]#配置mariadb配置檔案cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mariadb
[root@sql1 mysql]#
chmod +x /etc/init.d/mariadb
[root@sql1 mysql]# chkconfig --add mariadb
[root@sql1 mysql]# ln -s /usr/local/mysql/bin* /usr/local/bin
[root@sql1 mysql]# vim /etc/my.cnf啟動mariadb資料庫服務# 只修改這兩項
datadir=/mydata/mariadb
socket=/tmp/mysql.sock
[root@sql1 mysql]# systemctl start mariadb配置完成後就可以用mysql命令使用mariadb了# mysql_secure_installation 用來修改密碼、刪除匿名使用者、取消遠端鏈結
[root@sql1 mysql]# mysql_secure_installation

CentOS 7 原始碼編譯安裝 Redis
wget tar xzf redis 4.0.10.tar.gz cd redis 4.0.10yum y install gcc gcc c kernel devel make等待編譯完成 make prefix usr local redis install mkdir usr local re...
Centos 7 原始碼編譯安裝mysql
1.安裝相關包 yum install bison bison devel zlib devel libcurl devel libarchive devel boostdevel gcc gcc c cmake ncurses devel gnutls devel libxml2 devel op...
centos7編譯原始碼安裝nginx
1 安裝依賴 yum y install gcc zlib zlib devel pcre devel openssl openssl devel 下面說說這些依賴 gcc 因為nginx是由c編寫的,gcc gnu compiler collection,gnu編譯器套件 是由 gnu 開發的程式...