1. 程式人生 > >源碼編譯安裝mysql-5.7.14

源碼編譯安裝mysql-5.7.14

padding 默認 oar def 預編譯 err clipboard back .tar.gz

1.下載並上傳 mysql-5.7.14.tar.gz view plain copy

  1. tar -zxf msql-5.7.14.tar.gz


2.安裝依賴包 view plain copy

  1. yum -y install gcc gcc-c++ ncurses ncurses-devel cmake


3.下載Boost庫 view plain copy

  1. wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz


4.添加用戶 view plain copy

  1. groupadd mysql

  2. useradd -r -g mysql -s /bin/false mysql


5.預編譯 view plain copy

  1. cmake . \

  2. -DCMAKE_INSTALL_PREFIX=/application/mysql-5.7.14 \

  3. -DMYSQL_DATADIR=/application/mysql-5.7.14/data \

  4. -DDOWNLOAD_BOOST=1 \

  5. -DWITH_BOOST=/software/boost_1_59_0 \

  6. -DMYSQL_UNIX_ADDR=/application/mysql-5.7.14/tmp/mysql.sock \

  7. -DDEFAULT_CHARSET=utf8 \

  8. -DDEFAULT_COLLATION=utf8_general_ci

    \

  9. -DENABLED_LOCAL_INFILE=ON \

  10. -DWITH_INNOBASE_STORAGE_ENGINE=1 \

  11. -DWITH_FEDERATED_STORAGE_ENGINE=1 \

  12. -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

  13. -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \

  14. -DWITHOUT_PARTITION_STORAGE_ENGINE=1 \

  15. -DWITH_FAST_MUTEXES=1 \

  16. -DWITH_ZLIB=bundled \

  17. -DENABLED_LOCAL_INFILE=1 \

  18. -DWITH_READLINE

    =1 \

  19. -DWITH_EMBEDDED_SERVER=1 \

  20. -DWITH_DEBUG=0

6.編譯安裝view plain copy

  1. make

  2. make install

7.修改 /etc/my.cnf view plain copy

  1. [mysqld]

  2. datadir=/application/mysql/data

  3. socket=/application/mysql/tmp/mysql.sock

  4. user=mysql

  5. # Disabling symbolic-links is recommended to prevent assorted security risks

  6. symbolic-links=0

  7. character_set_server=utf8

8.修改權限 view plain copy

  1. chown -R mysql:mysql mysql-5.7.14/


9.建立數據庫目錄 view plain copy

  1. mkdir data

  2. chown mysql:mysql data

10.初始化view plain copy

  1. bin/mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data

11.設置加密連接 view plain copy

  1. bin/mysql_ssl_rsa_setup


12.加入系統服務view plain copy

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

  2. 修改 mysqld 文件裏的 basedir datadir 屬性

  3. chkconfig mysqld on # 設置開機自啟動

  4. chkconfig --list | grep mysqld

13.啟動 重啟 停止 view plain copy

  1. service mysqld start

  2. service mysqld restart

  3. service mysqld stop


14.登錄並修改初始密碼 copy

  1. SET PASSWORD FOR 'root'@'localhost'=PASSWORD('newpassword');


安裝中遇到的問題 view pcopy

  1. Starting MySQL... ERROR! The server quit without updating PID file (/application/mysql/Rong.pid).

1.查看錯誤日誌 /var/log/mysqld.log 檢查錯誤原因 view plain copy

  1. [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist


2.原因:在進行初始化數據庫權限表的時候默認創建的權限表在默認目錄/usr/local/mysql/var下面,而實際是在 /application/mysql/data

3.通過需改 /etc/my.cnf 下 --datadir參數來解決問題


源碼編譯安裝mysql-5.7.14