【MySQL5.7】CentOS 7.2上MySQL5.7.16的rpm安装

一、实验环境

操作系统: CentOS 7.2 Minimal

MySQL 版本: 5.7.16

IP: 192.168.1.105

二、防火墙、selinux设置

# setenforce 0

# sed -i 's/^SELINUX=.*/SELINUX=permissive/g'   /etc/selinux/config

# firewall-cmd --permanent --zone=public --add-port=3306/tcp

# firewall-cmd --reload

三、卸载mariadb相关组件

注:一般是 mariadb-libs

# rpm  -e   --nodeps  $(rpm -qa | grep mariadb*)

# rpm -qa | grep mariadb* | xargs rpm -e  --nodeps

四、从MySQL官网下载MySQL rpm合集包

# wget    http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar

# tar  -xvf mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar

解压下载的MySQL bundle包),你会看到有12个rpm包

 

 

实际安装一个MySQL数据库,我们只需要安装5个rpm包

 

五、检查依赖,安装依赖

# rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE}(%{ARCH})\n'   libaio    net-tools  perl

# yum  -y install epel-release

# yum -y install  libaio   net-tools  

# yum -y install perl  

安装perl,主包加依赖共有27个

四、按顺序安装MySQL组件

# rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm

# rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm

# rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm

# rpm -ivh mysql-community-libs-compat-5.7.16-1.el7.x86_64.rpm

# rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm

 

# rpm -qa | grep mysql-community

 

安装结束后会在Linux中的各种目录生成必要的文件,如下表:

 

五、自定义数据目录

MySQL的数据目录默认是/var/lib/mysql ,当然你也可以自定义数据存放目录

# mkdir /opt/data/mysql

# vim  /etc/my.cnf

datadir=/opt/data/mysql

注意:

socket=/var/lib/mysql/mysql.sock 这个配置没有更改的必要

如果你自定义为  socket=/var/lib/mysql/mysql.sock,那么启动后连接数据库时就会报错

如果更改了默认,那么数据库启动后,需要做一个软链接

# ln -s /opt/data/mysql/mysql.sock /var/lib/mysql/mysql.sock

# chown  -R mysql:mysql /opt/data/mysql

六、初始化MySQL

初始化MySQL,可以通过执行 mysqld --initialize 或者 mysqld --initialize-insecure

使用 --initialize 选项,以“安全模式”初始化,会在日志中生成一个随机的root初始密码

使用--initialize-insecure选项,以“非安全模式”初始化,没有root密码生成,你需要及时为MySQL指定一定强度的root密码

 

方式一、以“安全模式”初始化

# mysqld  --initialize   --datadir=/opt/data/mysql  --user=mysql

#  cat /var/log/mysqld.log | grep "temporary password"

# systemctl start mysqld

# systemctl status mysqld

# mysql -u root -p"*simYaJY=7zH"

首次登录,必须更改随机的root初始密码,且密码强度需满足一定要求,才能执行数据库操作

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '设置的新密码';

# mysql -u root -p"MySQL@123"

 

方式二、以 “非安全模式”初始化

# mysqld --initialize-insecure --datadir=/opt/data/mysql--user=mysql

# systemctl start mysqld

# systemctl  status mysqld.service

#  mysql -u root  --skip-password

投入生产前,你需要立刻为MySQL设置一个root密码

交互式设置

# mysql -u root --skip-password

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '设置的新密码';

非交互式设置

# mysql -u root --connect-expired-password -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '设置的新密码'"

七、参考

The world's most popular open source database 

https://dev.mysql.com

A Quick Guide to Using the MySQL Yum Repository

https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/

Installing MySQL on Linux Using the MySQL Yum Repository

https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html

CentOS Linux 7离线安装MySQL 5.7.x

https://zhuanlan.zhihu.com/p/34719781

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值