MySQL 5.7.19 源碼安裝

來源:互聯網
上載者:User

標籤:tool   ted   mys   file   ase   process   下載   netstat   ncurses   

MySQL 5.7.19 源碼安裝

 

1. 安裝依賴包
  # yum -y install ncurses-devel libaio-devel cmake gcc gcc-c++ bison perl-Time-HiRes

2. 下載安裝boost
  2.1. 下載包
    # wget http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

  2.2. 解壓
    # tar xf boost_1_59_0.tar.gz

  2.3. 將boost 的包放到 /usr/local/boost 下
    # mv boost_1_59_0 /usr/local/boost

3. 建立 mysql 帳號
  # useradd -s /sbin/nologin -M mysql

  驗證
  # id mysql

  

 

4. 下載, 解壓 mysql
  # mkdir /root/tools
  # cd /root/tools
  # wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19.tar.gz
  # tar xf mysql-5.7.19.tar.gz

5. 安裝 mysql
  5.1. cmake 解壓與設定 msyql

cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.7.19 -DMYSQL_DATADIR=/application/mysql-5.7.19/data -DMYSQL_UNIX_ADDR=/application/mysql-5.7.19/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0 -DWITH_BOOST=/usr/local/boost/

  

5.2. 編譯安裝
  # grep processor /proc/cpuinfo|wc -l
  # make -j 6 && make install
    -j : 使用 6個線程進行編譯解壓, 越多編譯快

6. 配置mysql
  6.1. 設定軟串連
    # ln -s /application/mysql-5.7.19/ /application/mysql

  6.2. 修改設定檔
    # cat /etc/my.cnf
    # mysql config
    [mysqld]
    # datadir=/application/mysql/data
    #
    # socket=/application/mysql/tmp/mysql.sock
    # skip-grant-tables
    symbolic-links=0

    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/application/mysql/mysqld.pid

7. 初始化資料庫
  7.1. 建立目錄 /application/mysql-5.7.19/tmp 存放 mysql.sock
    # mkdir /application/mysql-5.7.19/tmp

  7.2. 將 /application/ 下的所有檔案 使用者付給 mysql 使用者
    # chown -R mysql.mysql /application/mysql*

7.3. 設定環境變數
  # echo ‘PATH=$PATH:/application/mysql/bin/‘ >>/etc/profile
  # source /etc/profile

7.4. 配置開機檔案
  # cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld

7.5. 初始化資料庫
  # mysqld --initialize-insecure --user=mysql --basedir=/application/mysql/ --datadir=/application/mysql/data

8. 啟動 mysql
  8.1. 啟動
    # /etc/init.d/mysqld start
    # netstat -lntup |grep 330

  8.2. 設定開啟啟動
    # chkconfig mysqld on
    # chkconfig mysqld --list

----------------------------------------------------------------------
# CMAKE 選項解釋
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //MySQL安裝的根目錄
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock //指定mysql.sock位置
-DMYSQL_DATADIR=/data //MySQL資料庫檔案存放目錄
-DSYSCONFDIR=/etc //MySQL設定檔所在目錄
-DWITH_MYISAM_STORAGE_ENGINE=1 //添加MYISAM引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 //添加InnoDB引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 //添加ARCHIVE引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITH_PARTITION_STORAGE_ENGINE=1 //支援資料庫分區
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
-DWITH_READLINE=ON
-DCOMPILATION_COMMENT=‘Zhaofx for mysqltest‘ //
-DEXTRA_CHARSETS=all //使MySQL支援所有的擴充字元
-DDEFAULT_CHARSET=utf8 //設定MySQL的預設字元集為utf8
-DDEFAULT_COLLATION=utf8_general_ci //設定預設字元集校對規則
-DWITH_SYSTEMD=1 //可以使用systemd控制mysql服務
-DWITH_BOOST=/usr/local/boost //指向boost庫所在目錄
-DWITH_EXTRA_CHARSETS=all
-DWITH_ZLIB=bundled
-DWITH_SSL=bundled
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DENABLED_LOCAL_INFILE=1
-DWITH_EMBEDDED_SERVER=1
-DENABLE_DOWNLOADS=1
-DWITH_DEBUG=0

MySQL 5.7.19 源碼安裝

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

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.