安装软件依赖包
yum -y install gcc gcc-c++ ncurses ncurses-devel cmake
下载软件包
cd /usr/local/src
wget https://downloads.mysql.com/archives/get/file/mysql-5.7.13.tar.gz --no-check-certificate
下载 boost 库,MySQL 5.7.5 开始Boost库是必需的
cd /usr/local/
wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz --no-check-certificate
tar zxvf boost_1_59_0.tar.gz
创建安装用户
useradd -M -s /sbin/nologin mysql
创建安装目录
mkdir -p /usr/local/mysql
创建数据目录
mkdir /mysql3306
创建配置文件目录
mkdir -p /usr/local/mysql/etc
创建数据库日志目录
mkdir -p /usr/local/mysql/logs
编译安装
cd /usr/local/src
tar zxvf mysql-5.7.13.tar.gz
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/mysql3306/ \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/boost_1_59_0
make && make install
生成配置文件
创建 配置文件目录
mkdir -p /usr/local/mysql/etc
cp support-files/my-default.cnf etc/my.cnf
编辑配置文件
修改安装目录的权限
chown -R mysql:mysql /usr/local/mysql/
拷贝配置文件的启动脚本
cp /app/mysql/mysql/support-files/mysql.server /etc/init.d/mysqld
将mysql 命令加入到环境变量
export PATH=$PATH:/usr/local/mysql/bin
source /etc/profile
初始化数据库设置
./mysqld --initialize-insecure
启动数据库
/etc/init.d/mysqld start
数据库报错
/etc/init.d/mysqld start
Starting MySQL.The server quit without updating PID file (/[FAILED]l/mysql/mysqld.pid).
查看错误日志
解决方法
chown -R mysql:mysql /mysql3306
登录并查看数据库,默认安装完的数据库没有密码
给数据库设置密码
版本更新后,原来user里的password字段已经变更为authentication_string
登录MySQL
mysql> update mysql.user set authentication_string=password("123qwe") where user="root" and Host = "localhost";
Query OK, 1 row affected, 1 warning (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 1
mysql> flush privileges;
登录验证