首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

CentOS 6.7 編譯安裝 MySQL 5.7.11 完整實錄(含 Boost 依賴與 root 密碼重置)

     編輯:MySQL 綜合教學

前置依賴


# 系統:CentOS 6.7 x64
# 安裝目錄:/app/local/mysql
# 數據目錄:/app/local/data

yum -y install gcc gcc-c++ ncurses-devel bison

# 1. CMake 3.1+
wget https://cmake.org/files/v3.1/cmake-3.1.3.tar.gz
tar zxvf cmake-3.1.3.tar.gz && cd cmake-3.1.3
./configure && make && make install

# 2. Boost 1.59.0(MySQL 5.7 強依賴)
wget https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
tar zxvf boost_1_59_0.tar.gz
mkdir -p /usr/local/boost
mv boost_1_59_0/* /usr/local/boost/

MySQL 編譯安裝


wget https://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.11.tar.gz
tar zxvf mysql-5.7.11.tar.gz && cd mysql-5.7.11

cmake \
  -DCMAKE_INSTALL_PREFIX=/app/local/mysql \
  -DMYSQL_DATADIR=/app/local/data \
  -DDEFAULT_CHARSET=utf8 \
  -DDEFAULT_COLLATION=utf8_general_ci \
  -DMYSQL_TCP_PORT=3306 \
  -DMYSQL_USER=mysql \
  -DWITH_MYISAM_STORAGE_ENGINE=1 \
  -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
  -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
  -DWITH_MEMORY_STORAGE_ENGINE=1 \
  -DDOWNLOAD_BOOST=1 \
  -DWITH_BOOST=/usr/local/boost

make && make install

初始化與配置


# 用戶權限
groupadd mysql
useradd -g mysql -s /bin/false mysql
chown -R mysql:mysql /app/local/data
chown -R mysql:mysql /app/local/mysql

# 初始化(生成隨機 root 密碼)
cd /app/local/mysql/bin
./mysqld --initialize --user=mysql --basedir=/app/local/mysql --datadir=/app/local/data

# 配置文件
mv /etc/my.cnf /etc/my.cnf.bak
cp ../support-files/my-default.cnf /etc/my.cnf

# 服務註冊
cp ../support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chkconfig mysqld on
service mysqld start

Root 密碼重置


# 1. 用隨機密碼登錄(查看 ~/.mysql_secret 或錯誤日誌)
mysql -u root -p'random_pass'

# 2. 修改密碼
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
FLUSH PRIVILEGES;

注意:MySQL 5.7.6+ PASSWORD() 返回認證字符串,無需 UPDATE user SET authentication_string=...。

驗證


mysql -u root -p123456 -e "SELECT VERSION(); SHOW VARIABLES LIKE 'datadir';"
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved