1. 安裝環境: Ubuntu 15.04 MySQL-5.6.21.tar.gz 2. 安裝必備的工具(保證mysql安裝的基礎環境) sudo apt-get install make bison g++ build-essential libncurses5-dev cmake
3. 添加組合使用者 設定安裝目錄許可權 sudo groupadd mysql(未做) sudo useradd –g mysql mysql –s /bin/false #建立使用者mysql並加入到mysql組,不允許mysql使用者直接登入系統(未做)
說明:我的軟體安裝目錄: /home/test/alidata/soft/ sudo mkdir –p /home/test/alidata/soft/mysql #建立Mysql安裝目錄 sudo mkdir -p /home/test/alidata/soft/mysql/data sudo mkdir -p /home/test/alidata/soft/mysql/log sudo chown -R mysql:mysql /usr/local/mysql/data(未做) sudo chown -R mysql:mysql /usr/local/mysql(未做)
4. 編譯安裝mysql
4.1 擷取源碼包 cd //home/test/alidata/soft/ sudo wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.23.tar.gz 4.2 解壓mysql源碼包 sudo tar –zxvf mysql-5.6.23.tar.gz 5. 編譯配置(先cmake設定配置, make 編譯 , make install 拷貝到對應目錄) cd mysql-5.6.23 1)sudo cmake -DCMAKE_INSTALL_PREFIX=/home/test/alidata/soft/mysql -DSYSCONFDIR=/etc -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/test/alidata/soft/mysql/data -DWITH_DEBUG=0
說明: -DCMAKE_INSTALL_PREFIX:mysql需要安裝的目錄(需要自訂) -DMYSQL_DATADIR:mysql資料需要存放的目錄(需要自訂) 注意事項: 重新編譯時間,需要清除舊的對象檔案和緩衝資訊。 # make clean # rm -f CMakeCache.txt # rm -rf /etc/my.cnf 2)sudo make -j4 #-j數字 表示以多核心運行
時間最長,耐心等待,沒有報錯就是ok,有報錯根據提示安裝需要的應用 3)sudo make install 6. 相關配置 6.1 配置開機啟動 sudo chmod +w /home/test/alidata/soft/mysql(增加許可權) sudo cp ./support-files/my-default.cnf /etc/my.cnf sudo cp ./support-files/mysql.server /etc/init.d/mysqld sudo chmod 755 /etc/init.d/mysqld
6.2 常用命令軟串連,設定環境變數 sudo ln -s /home/test/alidata/soft/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18 sudo ln -s /home/test/alidata/soft/mysql /usr/bin sudo ln -s /home/test/alidata/soft/mysql/bin/mysqladmin /usr/bin 6.3 初始化資料庫 sudo /home/test/alidata/soft/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/home/test/alidata/soft/mysql --datadir=/home/test/alidata/soft/mysql/data --user=test 說明:網上會預設的增加mysql使用者,使用MySQL使用者來作為mysql的主使用者處理。我們已自己建立的test使用者。 7. 啟動mysql服務試一試 sudo /etc/init.d/mysqld start
有問題看日誌(重要): See "systemctl status mysqld.service" and "journalctl -xe" for details 最後添加使用者: adduser mysql
說明:啟動的時候發現還是有地方會需要mysql使用者,所以又加上了。於是就ok了。呵呵呵。不過好處是使用test來運行mysql沒有之前碰到的各種許可權問題。
8. 啟動成功後建立root使用者的密碼(不要忘記哦) mysqladmin -u root password再次設定密碼mysqladmin -u root password -p root 9. 成功後使用一下 mysql -uroot -p
需要添加環境變數 vim /etc/profile export PATH=/home/test/alidata/soft/mysql/bin:$PATH source /etc/profile 10. 開機啟動mysql http://www.2cto.com/database/201312/265018.html sudo update-rc.d -f mysql.server defaults(提示找不到mysql.server命令就使用下面的命令) sudo update-rc.d -f mysqld defaults(或者)(在第6步賦值為mysqld所以這裡使用的是該命令) 取消開機啟動 sudo update-rc.d -f mysql.server remove 關於cmake命令詳解: 注釋: 我把安裝路徑放在了/usr/local/mysql,也就是預設的路徑,data放在/usr/local/mysql/data/下,sock檔案放到/usr/local/mysql/mysqld.sock 一些參數如下:根據需要選擇吧。 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 |