本站所有文章均为原创,如对您有帮助,恳请帮忙点击任何一处广告
  • 首页
  • MySQL
  • 【MySQL 5.7】Yum安装、通用二进制安装、源码安装MySQL 5.7图文教程

【MySQL 5.7】Yum安装、通用二进制安装、源码安装MySQL 5.7图文教程

发布:TangLu2018-3-16 17:12分类: MySQL 标签: mysql

MySQL安装方式分为YUM安装、源码编译安装和通用二进制包3种。在官网(https://dev.mysql.com/downloads/mysql/)进行安装包下载时通过文件名能判断出下载的包是否是自己需要的,大概规律如下:

1、RPM包安装:mysql57-community-release-el7-9.noarch.rpm(也可以选择bundle包,该包将MySQL所有包都整合放在了一起)

2、通用二进制预编译安装(Generic):mysql-5.7.16-linux-glibc2.5-x86_64.tar

3、源码包安装(Source):mysql-5.7.16.tar.gz



一、Yum安装(最简单,但无法自定义参数)

1、如图选择Red Hat Enterprise Linux / Oracle Linux时可以看到一个Yum Repository的下载链接,进入该链接后会显示对应系统版本的rpm文件,这些rpm文件并不是MySQL的安装包,而是Yum仓库。下载对应版本的rpm文件并安装到系统中就会生成一个包含MySQL程序的Yum仓库,剩下的就是使用yum命令直接安装了(Server和Client都装上

mysql571.png


2、启动服务,由于是第一次启动,系统会初始化生成数据库的相关文件到/var/lib/mysql目录中

systemctl start mysqld


3、登录数据库测试是否正常,MySQL 5.7开始无法使用空密码登录,查看临时密码在日志文件中

grep 'password' /var/log/mysqld.log
mysql -uroot -p 'kjgug512525'


二、通用二进制预编译安装(能自定义安装路径等部分参数,需要自己创建用户和组和初始化数据库,也是推荐方式,因为MySQL基本是不需要编译啥东西的)

1、创建MySQL用户和组,并将通用二进制安装包解压到需要的路径下

useradd -r -s /sbin/nologin -M mysql
cd /usr/local/
tar zxvf mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz  #将二进制包解压到/usr/local目录下
ln -s mysql-5.7.16-linux-glibc2.5-x86_64  mysql  #创建软连接方便管理


2、创建两个目录用于存放MySQL数据和日志,并将属组修改为MySQL用户

mkdir /mysql/{data,log}
chown -R mysql.mysql /mysql


3、使用bin/mysqld脚本进行初始化(MySQL 5.7以前是mysql_install_db)

#方法1:初始化的时候在命令行写好相关参数
bin/mysqld --initialize --user=mysql  --basedir=/usr/local/mysql  --datadir=/mysql/data

#方法2:将初始化参数写在配置文件中,然后读取配置文件进行初始化(初始化失败的话通常和配置参数错误有关系)
vi /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /mysql/data
log-error = /mysql/log/error.log
character-set-server = utf8
socket = /tmp/mysql.sock
innodb_buffer_pool_size = 2G  #设置MySQL使用内存,通常设置为物理内存70%左右
innodb_file_per_table = 1  #为每个表开启独立表空间
[client]
socket = /tmp/mysql.sock

#运行初始化命令指定配置文件路径,该选项必须放在第一个参数中
bin/mysqld --defaults-file=/etc/my.cnf  --initialize --user=mysql


4、初始化完成后会在datadir生成MySQL初始数据库,以后如果要重新初始化的话需要先停止服务,然后删掉数据目录,接着重新创建目录并授权后再做初始化。如果是初始化失败的话可以查看错误日志检查原因,在没配置错误日志时,日志默认会在databasedir中,以主机名为名,如server1.err


5、初始化完成后也会生成一个临时密码,运行bin/mysql_secure_installation脚本可以修改密码和进行一些初始化设置

mysql572.png


6、修改配置后有两种方式来重启MySQL。一个是通过客户端关闭MySQL然后再启动

#方法1:用命令行直接关闭再启动服务
mysqladmin -uroot -p123456 -S /tmp/mysql.sock shutdown
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
#方法2:拷贝二进制包中的启动脚本进行服务管理,虽然这操作方式是按照CentOS6来的,但是在7也是向下兼容的)
cp support-files/mysql-server /etc/init.d/mysqld
chmod a+x /etc/init.d/mysqld
chkconfig --add mysqld 
chkconfig mysqld on
service mysqld start


7、连接上数据库后必须修改初始化密码才可以进行其他操作

alter user root@'localhost' identified by 'Newp@ssword'


三、源码安装(所有参数都能自定义)

1、安装编译工具和依赖环境,如cmake,这个是MySQL 5.6开始使用的编译工具

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


2、创建用户和组,和使用通用二进制安装一样,略

3、进入源码包目录,使用cmake进行编译,5.7版本开始需要有boost库的支持,具体参数可以在官方文档查询

cmake . \
-DDOWNLOAD_BOOST=1 或者 -DWITH_BOOST=/usr/local/boost
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/mysql_data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all 


4、cmake操作完成后执行运行make && make install命令,然后就是漫长的等待,之后就是初始化过程,和使用通用二进制包安装一模一样,略。

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!
et_highlighter51
版权所有:《Linux运维技术学习站点
文章标题:《【MySQL 5.7】Yum安装、通用二进制安装、源码安装MySQL 5.7图文教程
除非注明,文章均为 《Linux运维技术学习站点》 原创
转载请注明本文短网址:http://www.linuxe.cn/post-400.html  [生成短网址]

已有 0/1587 人参与

发表评论:

欢迎分享Linux运维技术学习站点

欢迎使用手机扫描访问本站,还可以关注微信哦~