CentOS7下源碼安裝mysql


1、mysql安裝步驟

第一步、安裝依賴包

yum -y install ncurses-devel gcc-* bzip2-*

安裝完依賴

第二步、升級cmake工具

wget https://github.com/Kitware/CMake/releases/download/v3.16.0-rc3/cmake-3.16.0-rc3.tar.gz

解壓縮:tar xf cmake-3.13.0-rc2.tar.gz

解壓縮后進入目錄文件

看到有configure文件,配置文件 ./configure

配置完成后開始編譯 make -j4

編譯完成后安裝 make install

第三步、升級boost庫文件

wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.bz2

這里要注意,boost需要升級1_68_0版本,因為它是對應mysql5的,如果是最新版本只能使用mysql8

boost是綠色文件,直接解壓后拷貝就可以用

tar xf boost_1_68_0.tar.bz2

將文件拷貝到/usr/local/boost下

mv boost_1_68_0 /usr/local/boost

第四步、安裝mysql

去官網下載mysql

解壓縮后進入文件目錄,因為mysql目錄中沒有configure文件,所以我們需要cmake來配置mysql

配置命令如下

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \  指定安裝路徑
> -DMYSQL_DATADIR=/usr/local/mysql/data/ \   指定數據目錄
> -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \  指定sock文件路徑
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \    安裝Innodb引擎
> -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf-8 -DDEFAULT_COLLATION=utf8_general_ci \  安裝所有字符集、默認字符集和檢驗字符
> -DWITH_DEBUG=0 \  關閉debug
> -DWITH_EMBEDDED_SERVER=1 \ 生成一個libmysqld.a(.so)的庫,這個庫同時集成了mysql服務與客戶端API
> -DDOWNLOAD_BOOST=1 -DENABLE_DOWNLOADS=1 -DWITH_BOOST=/usr/local/boost  允許boost下載
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data/ -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock  -DWITH_INNOBASE_STORAGE_ENGINE=1  -DENABLED_LOCAL_INFILE=1 -DEXTRA_CHARSETS=all  -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_DEBUG=0 -DWITH_EMBEDDED_SERVER=1  -DENABLE_DOWNLOADS=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost

如果配置中出現錯誤,想要從新配置的話,必須先把mysql目錄下的CMakeCache.txt文件刪除掉后再重新配置

完成配置

編譯 make -j4

編譯過程會比較長,大概十分鍾左右,根據你機器配置來看

安裝 make install

第五部、安裝后的操作

拷貝啟動文件

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

給予文件權限

chmod 755 /etc/init.d/mysql

創建一個mysql用戶

useradd -s /sbin/nologin -r mysql

創建了一個shell為nologin的系統用戶

將/usr/local/mysql目錄設置所有者給mysql用戶

chown mysql.mysql /usr/local/mysql/ -R

mysql下的用戶就全部更改了

創建軟連接

ln -sf /usr/local/mysql/bin/* /usr/bin/
ln -sf /usr/local/mysql/lib/* /usr/lib/
ln -sf /usr/local/mysql/libexec/* /usr/local/libexec
ln -sf /usr/local/mysql/share/man/man1/* /usr/share/man/man1      
ln -sf /usr/local/mysql/share/man/man8/* /usr/share/man/man8

第六部、修改配置文件

配置文件在 /etc/my.conf

vim /etc/my.conf

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

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

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

第七部、初始化mysql

初始化命令:

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

初始化以后有一個臨時密碼需要記錄

第八部、啟動mysql並修改密碼

/etc/init.d/mysql start

啟動成功,在3306端口看到了我們的mysql進程

修改密碼:

mysql_secure_installation

輸入剛剛初始化得到的臨時密碼,接着再輸入新密碼,輸入完成后根據提示再選擇配置參數即可

mysql -u root -p

回車后輸入密碼即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM