当前位置: 首页 > news >正文

centos7安装mysql5.7.23_centos7.1上安装Mysql5.7.23

2018-09-05

安装Mysql5.7.23版本的时候遇到了一些问题,不过可能每个人遇到的问题不一样,多找找才能解决问题哟~

8月底看到百度云做活动,30块钱半年我就买了一个,一开始我安装的是Mysql5.6.22,结果百度云给我提示说高危漏洞让我把 Mysql最起码升级到5.7.23,下面就是安装的过程了。

下载MySQL:

1、下载MySQL:https://dev.mysql.com/downloads/mysql/5.7.html#download

9c5934d132ca48ca60d3cdb578114f9d.png

2、网页需要向下滚一丢丢才能看到下载按钮,记得第一次来的时候以为必须要注册才可以下载,o(︶︿︶)o 唉

82caea8b79b94b4060282fbcc000a3b7.png

3、(1)选择 1 的话,使用命令下载:

[root@instance ~]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar

(2)选择 2 的话,下载后用Xshell等远程连接工具放到linux上去

准备:

下载的过程别闲着,再开一个窗口来配置一下环境

1、检测是否已经安装了mysql,使用下面命令查看

[root@instance ~]# rpm -qa | grep mysql

如果已经安装了,将其卸载,如:

[root@instance ~]# rpm -e --nodeps mysql-libs-5.1.71-1.el6.x86_64

2、查看一下 centos7自带的MariaDB数据库是否存在

[root@instance ~]# rpm -qa | grep -i mariadb

mariadb-libs-5.5.56-2.el7.x86_64

安装mysql的时候可能会和MariaDB有冲突,所以需要将它干掉

[root@instance ~]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

3、mysql的server端需要perl支持,所以安装一下

[root@instance ~]# yum install perl -y

4、mysql包应该下好了吧。。。先把压缩包复制到自己建的目录下,再解压一下会有12个rpm包

[root@instance ~]# mkdir /usr/local/mysql

[root@instance~]# cd /usr/local/mysql

[root@instance mysql]# cp/root/mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar /usr/local/mysql

[root@instance mysql]# tar-xvf mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar

[root@instance mysql]# ls

mysql-community-client-5.7.23-1.el7.x86_64.rpm

mysql-community-common-5.7.23-1.el7.x86_64.rpm

mysql-community-devel-5.7.23-1.el7.x86_64.rpm

mysql-community-embedded-5.7.23-1.el7.x86_64.rpm

mysql-community-embedded-compat-5.7.23-1.el7.x86_64.rpm

mysql-community-embedded-devel-5.7.23-1.el7.x86_64.rpm

mysql-community-libs-5.7.23-1.el7.x86_64.rpm

mysql-community-libs-compat-5.7.23-1.el7.x86_64.rpm

mysql-community-minimal-debuginfo-5.7.23-1.el7.x86_64.rpm

mysql-community-server-5.7.23-1.el7.x86_64.rpm

mysql-community-server-minimal-5.7.23-1.el7.x86_64.rpm

mysql-community-test-5.7.23-1.el7.x86_64.rpm

安装:

环境什么的都OK了之后就开始安装了:

因为解压出的这些rpm包之间有相互依赖的关系(gay里gay气的)所以要按照顺序去一个一个的安装

[root@instance mysql]# rpm-ivh mysql-community-common-5.7.23-1.el7.x86_64.rpm

[root@instance mysql]# rpm -ivh mysql-community-libs-5.7.23-1.el7.x86_64.rpm

[root@instancemysql]# rpm -ivh mysql-community-client-5.7.23-1.el7.x86_64.rpm

[root@instancemysql]# rpm -ivh mysql-community-server-5.7.23-1.el7.x86_64.rpm

安装前两个都好好的,后面第三个安装的时候报错了

[root@instance-6z7m60u3 mysql]# rpm -ivh mysql-community-client-5.7.23-1.el7.x86_64.rpm

warning: mysql-community-client-5.7.23-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

error: Failed dependencies:

mysql-community-libs(x86-64) >= 5.7.9 is needed by mysql-community-client-5.7.23-1.el7.x86_64

解决方法是在命令后面增加 2 个参数( --nodeps --force )来破坏他们之间的依赖关系

[root@instance mysql]# rpm -ivh mysql-community-client-5.7.23-1.el7.x86_64.rpm --nodeps --force

warning: mysql-community-client-5.7.23-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing... ################################# [100%]

Updating/installing...1:mysql-community-client-5.7.23-1.e################################# [100%]

问题解决了,正常安装最后一个rpm包

[root@instance mysql]# rpm -ivh mysql-community-server-5.7.23-1.el7.x86_64.rpm

warning: mysql-community-server-5.7.23-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing... ################################# [100%]

Updating/installing...1:mysql-community-server-5.7.23-1.e################################# [100%]

初始化:

首先将mysql添加到系统服务中去

[root@instance mysql]# systemctl start mysqld.service

启动mysql服务

[root@instance mysql]# service mysqld start

这时候如果想登陆,是不知道密码的,所以需要查看一下初始密码

[root@instance mysql]# cat /var/log/mysqld.log

daf8f10ced23f7f5d5e91d78e405b835.png

使用这个初始密码进行登陆,然后把密码改一下

[root@instance mysql]# mysql -u root -p

Enter password:

mysql> set password = password('密码密码密码');Query OK, 0 rows affected, 1 warning (0.00 sec)

为了方便以后使用SQLyog等数据库软件远程连接,需要开启外部远程访问权限

mysql> grant all privileges on *.* to 'root' @'%' identified by '密码密码密码!';

Query OK,0 rows affected, 1 warning (0.00 sec)

再立即刷新一下

mysql>flush privileges;

Query OK,0 rows affected (0.01 sec)

mysql> exit;Bye

这时候如果使用远程数据库软件进行连接还是会失败,因为没有开启3306端口,来开启一下

[root@instance mysql]# /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

在保存本次更改的时候出错了

[root@instance mysql]# /etc/rc.d/init.d/iptables save-bash: /etc/rc.d/init.d/iptables: No such file or directory

这是因为防火墙没开,查看一下,还真是防火墙没开

[root@instance mysql]# systemctl status firewalld

● firewalld.service- firewalld -dynamic firewall daemon

Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)

Active: inactive (dead)

再来开启一下防火墙

[root@instance mysql]# systemctl start firewalld

[root@instance mysql]# systemctl status firewalld

● firewalld.service- firewalld -dynamic firewall daemon

Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)

Active: active (running) since Wed2018-09-05 19:05:13CST; 7s ago

Main PID:33978(firewalld)

CGroup:/system.slice/firewalld.service

└─33978 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

Sep05 19:05:12 instance-6z7m60u3 systemd[1]: Starting firewalld -dynamic firewall daemon...

Sep05 19:05:13 instance-6z7m60u3 systemd[1]: Started firewalld - dynamic firewall daemon.

防火墙开启成功后,接着开启3306端口,并且再刷新一下防火墙

[root@instance mysql]# firewall-cmd --zone=public --add-port=3306/tcp --permanent

success

[root@instance mysql]# firewall-cmd --reload

success

使用navicat测试连接一下,连接成功了!

0d74021035bef603928c39171f5d53a5.png

相关文章:

  • java客户端_大家都是怎么发布Java客户端程序的?难道让用户自己装JRE?
  • java 加载jar_java – 在运行时加载jar
  • java ant linux_linux下ant的安装
  • java获取数据库信息_java获取数据库的库、表、字段信息
  • java jpanel 布局管理器,JPanel和Java布局管理器
  • java 验证码识别 类库_iCaptcha
  • java调用wsdl证书错误_java调用.net web service服务,报证书错误
  • mysql 联表删除limit_MySQL联结多表更新和删除_mysql
  • mysql数据库备份总结_mysql中mysqlhotcopy备份数据库总结
  • java 反射 api_七分钟理解 Java 的反射 API
  • java 导入dbf文件_用java怎么实现批量导入dbf文件(从dbf文件导入到sqlserver2008中)到sqlserver2008...
  • md5算法 java_MD5算法[ java 实现]
  • java获取指定日期_Java 获取指定日期的前一周
  • java 读取 nextline_【Java】Scanner类nextInt后使用nextLine无法读取输入
  • java 监听所有异常_java – Spring JMS监听器即使在异常时也会确认
  • 2019.2.20 c++ 知识梳理
  • 345-反转字符串中的元音字母
  • javascript从右向左截取指定位数字符的3种方法
  • Java精华积累:初学者都应该搞懂的问题
  • JDK9: 集成 Jshell 和 Maven 项目.
  • Phpstorm怎样批量删除空行?
  • PHP面试之三:MySQL数据库
  • ReactNative开发常用的三方模块
  • Sequelize 中文文档 v4 - Getting started - 入门
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 爬虫模拟登陆 SegmentFault
  • 深入浅出Node.js
  • 什么是Javascript函数节流?
  • 我建了一个叫Hello World的项目
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • #laravel 通过手动安装依赖PHPExcel#
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (C#)一个最简单的链表类
  • (C语言)球球大作战
  • (zhuan) 一些RL的文献(及笔记)
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (转)重识new
  • (转载)CentOS查看系统信息|CentOS查看命令
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .net core 源码_ASP.NET Core之Identity源码学习
  • .net 程序 换成 java,NET程序员如何转行为J2EE之java基础上(9)
  • .net 微服务 服务保护 自动重试 Polly
  • .NET(C#) Internals: as a developer, .net framework in my eyes
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)...
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法
  • .Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)
  • [ C++ ] 继承
  • [android] 手机卫士黑名单功能(ListView优化)
  • [AutoSar NVM] 存储架构
  • [BT]BUUCTF刷题第9天(3.27)
  • [cocos2d-x]关于CC_CALLBACK
  • [HAOI2016]食物链
  • [Java] 模拟Jdk 以及 CGLib 代理原理