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

Centos7(阿里云)_安装Mysql8.0

1.安装MySQL

新人可以试用一个月的阿里云,centos7的
在这里插入图片描述一开始可能确实会自带mariadb,所以可以在网上随便找个教程开始尝试安装MySQL,当然大概率出错,然后此时你的rpm下面已经有了一个版本的mysql安装包。
以我为例,随便找了个教程执行

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpmyum -y install mysql57-community-release-el7-10.noarch.rpmyum -y install mysql-community-serversystemctl start  mysqld.servicesystemctl status mysqld.servicegrep "password" /var/log/mysqld.log

所以的步骤都是可以的,除了最后一步,不知道什么原因,我在安装5.7版本的MySQL之后没有生成mysqd.log文件

所以我只能开始重装

首先要先查询你现有的mysql,暂停掉现有MySQL的服务

service mysqld status
service mysqld stop

然后查询组件

rpm -qa|grep mysql

在这里插入图片描述
然后删除组件,删除成功
在这里插入图片描述
安装,并指定相应的源

wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm

在这里插入图片描述安装对应的rpm包

sudo rpm -ivh mysql80-community-release-el7-1.noarch.rpm

在这里插入图片描述
使用yum安装mysql-server

sudo yum install mysql-server

在这里插入图片描述
在这里插入图片描述
注意我这边其实没成功,密钥过期,执行一下

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

现在再重新执行一下安装mysql-server的操作

yum install mysql-server

出现complete表示安装成功
在这里插入图片描述
启动MySQL

systemctl start mysqld.service

但我这边又失败了
在这里插入图片描述
百度了一下说是之前有东西没卸载干净

于是查询服务
在这里插入图片描述把这边能卸载的都卸了,只留下4个卸载不掉的
在这里插入图片描述
接着执行重装命令

wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm
sudo rpm -ivh mysql80-community-release-el7-1.noarch.rpm
sudo yum install mysql-server

这次加上sudo之后问题都解决了,总算成功把服务跑起来了
在这里插入图片描述
初始化一下mysql,然后执行命令,获取临时密码

mysqld --initialize
grep ‘temporary password’ /var/log/mysqld.log

在这里插入图片描述

2.登录

但用这个密码实际并不能登录
在这里插入图片描述
它报了一个2002,无法通过本地的sock文件进行本地链接
tmp这是个临时目录,下面的文件随时可能被删,看看这个目录下面,确实没有mysql.sock这个文件
在这里插入图片描述
同时查看/etc/my.cnf这个文件
在这里插入图片描述

它把mysql.sock这个文件定义在了这个位置,去/tmp下面找当然找不到
我们在/tmp下创建一个符号链接

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

在这里插入图片描述
现在/tmp下面有mysql.sock这个文件了

再次尝试登录mysql,登录成功
在这里插入图片描述
修改密码成功,现在可以用这个新密码登录MySQL了,不必使用temporary password
在这里插入图片描述

3.远程连接

创建一个库,新建一张表并插入一条数据,数据库的基本操作。
在这里插入图片描述
授权参考:https://blog.csdn.net/qq_31725371/article/details/83019856
这边需要注意一下,MySQL5.7和8.0是两种不同的处理方式

use mysql;
#修改root账户权限
update user set host = ‘%’ where user = ‘root’;
#刷新权限
flush privileges;

执行这三条命令,root可以从任何host访问。
在这里插入图片描述
这样从远端可以用navicat连接了,注意因为是在服务器上,所以要用SSH连接,具体配置如下

在这里插入图片描述
随后填写链接MySQL所需配置
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/31036.html

相关文章:

  • 【Java】JVM
  • Linux 和数据库笔记-06
  • MySQL面试题-事务篇
  • Linux嵌入式开发 | 汇编驱动LED(1)
  • 什么是EventLoop?怎么测试Node或页面的性能
  • 1018 锤子剪刀布 1025 反转链表
  • 卷积神经网络的原理及实现
  • 【C++知识点】重载
  • apscheduler三种定时触发方式
  • 802.11 service服务类型
  • pytest测试框架——allure报告
  • SQLI-Labs(3)8-14关【布尔盲注和时间盲注】
  • ESP32学习笔记03-日志打印
  • mongoTemplate非string类型模糊查询
  • Redis是单线程还是多线程?Redis的10种数据类型,有哪些应用场景?
  • 到底什么才是幻读?
  • RPC重试机制和控制方案
  • 【无标题】动态给结构体赋值
  • centos7 soft raid每周自动同步的问题
  • 嵌入式Linux内核代码风格
  • Andorid:关于Binder几个面试问题
  • 【剑指Offer-Java】包含min函数的栈?
  • 红队APT——邮件钓鱼攻击SwaksOffice漏洞RLO隐藏压缩释放
  • 【Java|基础篇】超详细讲解运算符
  • Promise-异步回调
  • 【设计模式之美 设计原则与思想:设计原则】21 | 理论七:重复的代码就一定违背DRY吗?如何提高代码的复用性?
  • 深度学习 | 入个Pytorch的小门
  • 应用上云指导
  • 进程概念~
  • 三天吃透Java基础八股文