windows和linux安装mysql5.7.31保姆级教程

一,资源如下,里面有windows和linux版的安装软件,内含Visual C++2013中文版windows系统插件

  1. windows资源地址:https://download.csdn.net/download/l1o3v1e4ding/89725150

在这里插入图片描述

  1. linux(centos)资源地址:https://download.csdn.net/download/l1o3v1e4ding/89725151

在这里插入图片描述

二,windows系统安装mysql5.7.31

  1. 安装包下载
    https://downloads.mysql.com/archives/installer/
    在这里插入图片描述

下载32位就可以,下面安装的时候合一选择系统的位数.
此处下载的是以msi结尾的文件,不是zip结尾的

  1. 安装步骤
    2.1 选择模式,此处选择的是自定义模式
    在这里插入图片描述

2.2 根据自己的系统过滤模式
在这里插入图片描述

  1. 过滤后
    在这里插入图片描述

  2. 将过滤出来的移动到右边
    在这里插入图片描述

  3. 选择安装路径
    在这里插入图片描述

  4. Excute安装
    在这里插入图片描述

  5. 完成后点击Next
    在这里插入图片描述

  6. 点击Excute进行安装
    在这里插入图片描述

  7. 完成后点击Next
    在这里插入图片描述

  8. 点击Next
    在这里插入图片描述

  9. 默认即可,点击Next
    在这里插入图片描述

  10. 默认即可,点击Next
    在这里插入图片描述

  11. 设置用户名密码,点击Next
    在这里插入图片描述

  12. 点击Next
    在这里插入图片描述

  13. 点击Excute进行安装
    在这里插入图片描述

  14. 完成后点击finish,这样Mysql就安装完成了

在这里插入图片描述

三,linux系统安装mysql5.7.31

  1. 卸载系统自带的mariadb
    我这里使用的是Centos7, 所以系统会自带Mariadb,需要先卸载掉,当然后面在安装mysql的过程中也会有提示

查询已安装的 Mariadb 安装包:

rpm -qa | grep mariadb

在这里插入图片描述

将所有的都卸载

yum -y remove xxx

我这里只有一个,如果有多个需要全部删除
在这里插入图片描述

  1. 下载mysql安装包 (https://www.mysql.com/downloads/)
    选择开源免费的社区版进行下载:
    在这里插入图片描述
    在这里插入图片描述

选择操作系统:
这里没有centos版本,选择红帽就好
在这里插入图片描述

我这里是Centos 7.9, x86架构:
在这里插入图片描述

根据[版本]下载第一个rpm捆绑包,图片是8.0的,实际下载是5.7.31的
在这里插入图片描述

捆绑包中会包含以下内容,就不用自己一个一个下载了
mysql-community-server数据库服务器和相关工具
mysql-community-clientMySQL客户端应用程序和工具
mysql-community-libsMySQL数据库客户端应用程序的共享库
mysql-community-common服务器和客户端库的通用文件
mysql-community-libs-compat以前的MySQL安装的共享兼容性库

3.正式进行安装
在 /opt 目录下新建mysql文件夹, 将下载的安装包推送到该目录下
在这里插入图片描述

在 /opt/mysql目录下解压安装包:

会将.tar文件变成 .tar.gz文件

gzip  mysql-5.7.31-1.el7.x86_64.rpm-bundle.tar

解压

tar -zxvf mysql-5.7.31-1.el7.x86_64.rpm-bundle.tar.gz

解压之后是:
mysql-community-embedded-devel-5.7.31-1.el7.x86_64.rpm
mysql-community-libs-5.7.31-1.el7.x86_64.rpm
mysql-community-client-5.7.31-1.el7.x86_64.rpm
mysql-community-server-5.7.31-1.el7.x86_64.rpm
mysql-community-embedded-5.7.31-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.31-1.el7.x86_64.rpm
mysql-community-common-5.7.31-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.31-1.el7.x86_64.rpm
mysql-community-devel-5.7.31-1.el7.x86_64.rpm
mysql-community-test-5.7.31-1.el7.x86_64.rpm

前置检查
由于mysql安装过程中,会通过mysql用户在/tmp目录下新建tmp_db文件,所以需要给 /tmp 目录较大的权限。

chmod -R 777 /tmp

检查依赖:
命令1

rpm -qa|grep libaio

在这里插入图片描述
注:如果没有的话(上面有)需要执行 yum install -y libaio-devel.x86_64 进行安装

命令2

rpm -qa|grep net-tools

在这里插入图片描述
注:如果没有的话(上面有)需要执行 yum install net-tools 进行安装

开始安装
依次执行以下命令,注意一定要按顺序,因为会有依赖关系
rpm -ivh mysql-community-common-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.31-1.el7.x86_64.rpm

在这里插入图片描述

4.验证mysql是否安装成功:

mysql --version
rpm -qa | grep -i mysql

在这里插入图片描述

5.服务的初始化
为了保证数据库目录与文件的所有者为 mysql 登录用户,如果你是以 root 身份运行 mysql 服务,需要执行下面的命令初始化:
mysqld --initialize --user=mysql
说明: --initialize 选项默认以“安全”模式来初始化,则会为 root 用户生成一个密码并将 该密码标记为过期 ,登录后你需要设置一个新的密码。生成的临时密码 会在日志中记录一份。

查看密码:

cat /var/log/mysqld.log

在这里插入图片描述

6.启动mysql服务

systemctl start mysqld.service # 启动mysql服务
systemctl status mysqld.service # 查看mysql服务的状态

在这里插入图片描述

默认情况下mysql服务是开机自启的

 systemctl list-unit-files | grep mysqld.service

在这里插入图片描述

如不是enabled可以运行如下命令设置开机自启动

systemctl enable mysqld.service

7.登录mysql
用前面我们查看的密码进行登录

mysql -uroot -p

输入密码

在这里插入图片描述

8.重置密码
执行了一个命令提示我们要修改密码(因为初始化密码默认是过期的,所以查看数据库会报错)
在这里插入图片描述

修改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Admin@123';

在这里插入图片描述

重新登录一下mysql即可
验证:查看数据库表数量

SELECT count(TABLE_NAME) FROM information_schema.TABLES WHERE TABLE_SCHEMA='dbname';

在这里插入图片描述

9.远程连接
云服务器上,开启防火墙3306端口
在这里插入图片描述

测试连接:失败
在这里插入图片描述

测试连接失败, 这是由于Mysql配置了不支持远程连接

Linux中不允许远程主机通过root用户登录问题
在这里插入图片描述

可以看到root用户对应的主机是localhost也就是自身主机
Host列指定了允许用户登录所使用的IP,比如User=root Host=192.168.1.1, 意思就是说root用户只能通过192.168.1.1的客户端去访问; User=root Host=localhost,表示只能通过本机客户端去访问。而 %是个通配符 ,如果Host=192.168.1.%,那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接。如果 Host=% ,表示所有IP都有连接权限。
注意:在生产环境下不能为了省事将host设置为%,这样做会存在安全问题,具体的设置可以根据生产环境的IP进行设置。
我们需要将mysql数据库user表中的root用户这个记录对应的主机进行修改

update user set host='%' where user='root';

修改成功
在这里插入图片描述

刷新一下权限:

flush privileges;

在这里插入图片描述

此时,再测试连接

新增用户admin命令:CREATE USER ‘admin’@‘%’ IDENTIFIED BY ‘Admin@123’;
给admin用户权限:grant all privileges on . to ‘admin’@‘%’ with grant option;
刷新一下权限:FLUSH PRIVILEGES;

在这里插入图片描述

  1. Centos7解决MySQL登录ERROR 1045 (28000) Access denied for user ‘’@‘localhost’ (using passwor)问题

步骤一:屏蔽权限,输入命令vim /etc/my.cnf打开配置文件;

步骤二:修改内容,在[mysqld]下末尾追加一行skip-name-resolve,如下图
在这里插入图片描述

然后保存退出。

步骤三:重启mysql服务,service mysqld restart

在这里插入图片描述

步骤四:登录mysql,输入mysql -u root mysql并回车,此时登录成功。

步骤七:上述成功之后,打开屏蔽权限,输入命令vim /etc/my.cnf打开配置文件;

删除[mysqld]下末尾一行的skip-name-resolve并保存退出。

步骤八:退出,用navicat或宝塔试试吧

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值