1.安装所需环境:
centos7
gcc,g++
git(否则会报Could NOT find Git (missing: GIT_EXECUTABLE))
2.安装:
Mysql 5.7 下载:wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.11.tar.gz
进入下载目录:cd /opt/setups
解压压缩包:tar zxvf mysql-5.7.11.tar.gz
移到解压包:mv /opt/setups/mysql-5.7.11.tar.gz /usr/program/
安装依赖包、编译包:yum install -y make gcc-c++ cmake bison-devel ncurses-devel
进入解压目录:cd /usr/program/mysql-5.7.11/ 修改目录名为mysql:mv mysql-5.7.11/ mysql
生成安装目录:mkdir -p /usr/program/mysql/data
生成配置(使用 InnoDB):cmake -DCMAKE_INSTALL_PREFIX=/usr/program/mysql -DMYSQL_DATADIR=/usr/program/mysql/data -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=utf8 -DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
出现错误:Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
安装yum install ncurses-devel
安装完毕之后继续执行cmake,出现CMake Warning at cmake/bison.cmake:20 (MESSAGE),继续yum install bison
然后继续执行cmake,出现-- Configuring done -- Generating done -- Build files have been written to: /usr/program/mysql-5.7.11
编译:make,这个过程比较漫长,一般都在 30 分钟左右,具体还得看机子配置,如果最后结果有 error,建议删除整个 mysql 目录后重新解压一个出来继续处理
安装:make install
添加用户及组:
groupadd mysql #添加组
useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统
chown -R mysql:mysql /usr/program/mysql/data
安装完成之后进行初始化:
cd /usr/program/mysql
./bin/mysqld --initialize --user=mysql --basedir=/usr/program/mysql --datadir=/usr/program/mysql/data
生成了临时密码,需要复制记住临时密码。
修改配置文件:
cd /usr/program/mysql/support-files
cp my-default.cnf /etc/my.cnf
vim my.cnf
修改 datadir = /usr/program/mysql/data
3.启动:
进入:/usr/program/mysql/bin
./mysqld_safe --user=mysql &
/mysql --user=root –p
输入临时密码,可以登录mysql
mysql> set password=password('123');
mysql>grant all privileges on *.* to root@'%' identified by '123';
mysql> flush privileges;
4.添加路径及开机自启:
# vim /etc/profile
添加:
##mysql
export PATH=/usr/local/mysql/bin:$PATH
开机自启动:
cp /usr/program/mysql/support-files/mysql.server /etc/init.d/mysql
# chmod 755 /etc/init.d/mysql
# chkconfig --add mysql
# chkconfig --level 345 mysql on
5.远程连接:
关闭centos防火墙:systemctl stop firewalld.service
用Navicat或者SQLyogEnt就可以远程登录mysql了
备注:centos版本7.0