【第0天】MYSQL快速入门-安装MYSQL环境(多环境企业级指导)(SQL 小虚竹)

本文是《100天精通MYSQL从入门到就业》的第0天内容,介绍了在Windows和Linux环境下安装MYSQL的过程。包括Windows上的下载、安装、客户端测试,以及Linux上安装前的防火墙和SELinux关闭、用户与组创建、安装步骤、数据目录配置、初始化数据库及密码设置、启动与关闭服务等操作。通过本文,读者可以掌握安装MYSQL的基本技能。
摘要由CSDN通过智能技术生成

回城传送–》《100天精通MYSQL从入门到就业》

零、前言

今天是学习 SQL 打卡的第0天,每天我会提供一篇文章供群成员阅读( 不需要订阅付钱 )。

希望大家先自己思考,如果实在没有想法,再看下面的解题思路,自己再实现一遍。在小虚竹JAVA社区 中对应的 【打卡贴】打卡,今天的任务就算完成了,养成每天学习打卡的好习惯。

​ 虚竹哥会组织大家一起学习同一篇文章,所以有什么问题都可以在群里问,群里的小伙伴可以迅速地帮到你,一个人可以走得很快,一群人可以走得很远,有一起学习交流的战友,是多么幸运的事情。

​ 我的学习策略很简单,题海策略+ 费曼学习法。如果能把这些题都认认真真自己实现一遍,那意味着 SQL 已经筑基成功了。后面的进阶学习,可以继续跟着我,一起走向架构师之路。

今天的学习内容是:安装MYSQL环境

一、windows安装mysql

这里使用的mysql版本是8.0.30 ,操作系统是win11 64位。

下载

下载地址:传送门–》
在这里插入图片描述
这里有各种系统对应的版本,自选
在这里插入图片描述
以window安装为例,简单介绍下安装过程
下载安装包到本地
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

只安装mysql server

第一步:双击安装包
在这里插入图片描述

第二步:
选择server only
在这里插入图片描述

第三步:
点击execute
在这里插入图片描述
直接下一步,next
在这里插入图片描述

第四步:
点击execute
在这里插入图片描述
在这里插入图片描述

第五步:
直接下一步,next
在这里插入图片描述

第六步:
mysql 的默认端口是3306,有需求的话,可自定义,然后next
在这里插入图片描述
使用默认配置:next
在这里插入图片描述
第七步:
配置root账号的密码
在这里插入图片描述
直接next
在这里插入图片描述
第八步:
更新配置,点击execute
在这里插入图片描述

点击finish
在这里插入图片描述
第九步:
直接下一步,next
在这里插入图片描述
点击finish
在这里插入图片描述

客户端连接测试

使用navicat客户端连接
在这里插入图片描述
连接成功
在这里插入图片描述
在这里插入图片描述

二、linux安装mysql

这里使用的mysql 版本是8.0.30,操作系统是CentOS8 64位。

安装前的准备

关闭CentOS 防火墙

先查看防火墙状态

systemctl status firewalld

在这里插入图片描述
防火墙是关闭的,如果没有关闭,可以执行这命令:
关闭防火墙:

systemctl stop firewalld.service

开机不要自启动:

systemctl disable firewalld.service

关闭SELinux

编辑文件:/etc/selinux/config

SELINUX=disabled
为什么要关闭SELinux

经验之谈(那些年含泪填的坑)
SELinux开启可能导致mysql服务启动不了,遇到报错:

提示"mysql deamon failed to start"错误信息

检查了数据目录和日志目录的权限和所属用户,权限和所属用户都没问题,最后定位到是SELINUX的权限限制了,把它关了,就正常了!

创建MySQL用户和组

创建mysql 的HOME 目录

mkdir -p /home/mysql

在这里插入图片描述
创建mysql 组

groupadd mysql

在这里插入图片描述

创建mysql 用户,并指定组和默认路径

useradd  -r -d /home/mysql -g mysql mysql

在这里插入图片描述

将mysql默认路径的用户和组改成mysql

chown -R mysql:mysql /home/mysql

在这里插入图片描述

下载

下载地址:传送门–》
如图选择,然后下载到本地
在这里插入图片描述

然后把文件从本地复制至 /usr/local 目录下:
在这里插入图片描述

安装mysql

解压mysql安装包

tar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz 

在这里插入图片描述
解压后的效果:
在这里插入图片描述
将解压后的mysql目录更名

mv mysql-8.0.30-linux-glibc2.12-x86_64 mysql

在这里插入图片描述
设置目录所有者:

chown -R mysql:mysql /usr/local/mysql

配置环境

为MYSQL 配置环境,修改文件:

vi /etc/profile

最后加上这一行,保存文件:

export PATH=$PATH:/usr/local/mysql/bin

在这里插入图片描述
让新调整的配置生效:

source /etc/profile

在这里插入图片描述

创建数据目录

创建数据目录:

mkdir /usr/local/mysql/data

将数据目录用户和组调整为mysql:

chown -R mysql:mysql /usr/local/mysql/data

更改数据目录权限:

chmod 750 /usr/local/mysql/data

在这里插入图片描述

新建mysql配置文件

新建配置文件 /etc/my.cnf 并添加以下内容:

[mysqld]
server-id=1
port=3306
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
log-error=/usr/local/mysql/data/error.log
socket=/tmp/mysql.sock
pid-file=/usr/local/mysql/data/mysql.pid
character-set-server=utf8
lower_case_table_names=1
innodb_log_file_size=1G
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password
[client]
port=3306
default-character-set=utf8

在这里插入图片描述

初始化数据库

mysqld --initialize --user mysql

在这里插入图片描述

报错:

mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

执行这行命令报错了,原因是:新的服务器环境,上面很多依赖都没有,所以安装软件的时候遇到一大堆小问题,解决它很简单,它缺少啥就安装啥。

解决方案:

yum install -y libaio.so.1

在这里插入图片描述

又报错了:

Errors during downloading metadata for repository 'epel':
Status code: 404 for http://archives.fedoraproject.org/pub/archive/epel/8/Everything/x86_64/repodata/repomd.xml (IP: **)
Error: Failed to download metadata for repo 'epel': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried

原因是:第三方的镜像站中均已移除CentOS 8的源,Centos 8版本已停止更新相应依赖导致的,下载新的yum源即可搞定。
解决方案:
备份之前的repo文件,命令:

mv /etc/yum.repos.d /etc/yum.repos.d.bak

创建源文件目录,命令:

mkdir -p /etc/yum.repos.d

下载新的yum源

curl https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo > /etc/yum.repos.d/Centos-vault-8.5.2111.repo

curl https://mirrors.aliyun.com/repo/epel-archive-8.repo > /etc/yum.repos.d/epel-archive-8.repo

如图所示操作:
在这里插入图片描述

再下载依赖:

yum install -y libaio.so.1

在这里插入图片描述
在这里插入图片描述

再安装

yum install -y libaio

提示成功后,初始化数据库:

mysqld --initialize --user mysql

在这里插入图片描述

查看初始化日志,确认下mysql的root密码

cat /usr/local/mysql/data/error.log

在这里插入图片描述
看到这两行,说明初始化成功了

2022-09-24T10:01:13.679765Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2022-09-24T10:01:22.585131Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.

root用户的临时密码如图所示:7Xn5+后面打码的字符串

启动和关闭mysql数据库

启动mysql数据库

进入mysql目录:

cd /usr/local/mysql

启动数据库

support-files/mysql.server start

如图所示,启动成功!
在这里插入图片描述
查看mysql 状态:

support-files/mysql.server status

在这里插入图片描述

配置开机自启动

复制mysql.server 文件到/etc/init.d目录下

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

使用chkconfig 添加mysql服务到开机启动列表里

chkconfig --add mysqld

在这里插入图片描述

可使用systemctl 命令了,查看mysql数据库状态:

systemctl status mysqld

在这里插入图片描述
因为刚配置,这个mysqld服务未启动。
启动:

systemctl start mysqld

在这里插入图片描述
在这里插入图片描述

关闭mysql数据库

关闭mysqld服务

systemctl stop mysqld

在这里插入图片描述
在这里插入图片描述

第二种关闭方式

在这里插入图片描述

修改初始化数据库时的临时密码

进入mysql:

mysql -uroot -p

输入临时密码:
如果忘记了临时密码,从这边查找:

cat /usr/local/mysql/data/error.log

在这里插入图片描述

先修改临时密码:

alter user 'root'@'localhost' identified by 'xiaoxuzhu';

在这里插入图片描述
修改成功后,退出mysql:
在这里插入图片描述
使用新密码,尝试登录mysql:
在这里插入图片描述
登录成功;
使用临时密码,尝试登录,临时密码无效了。
在这里插入图片描述

第三种关闭方式

查看mysql服务状态:

support-files/mysql.server status

如果已关闭,请开启 再往下执行。
关闭mysql服务:

mysqladmin -uroot -pxiaoxuzhu shutdown

在这里插入图片描述

第四种关闭方式

进入mysql里,然后执行shutdown命令:

mysql -uroot -pxiaoxuzhu

shutdown;
quit;

在这里插入图片描述

客户端连接测试

新创建一个root用户针对外网访问的:

create user 'root'@'%' identified by 'xiaoxuzhu';

授予所有权限给root用户

grant all on *.*  to 'root'@'%';

刷新权限,不需要重启就让权限生效。

flush privileges;
在这里插入图片描述

虚竹哥用的是云服务器,所以还要开启云服务器的安全组,让指定的3306 端口通过。

如果云服务器有设置防火墙,防火墙要开启3306端口;

在这里插入图片描述

使用navicat客户端连接
在这里插入图片描述

三、参考

《mysql 数据库进阶实战》:第1章 1.2安装mysql数据库(linux环境)
报错解决方案:mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such
报错解决方案:Failed to download metadata for repo ‘epel’: Cannot download repomd.xml: Cannot download …Status code: 404

我是虚竹哥,我们明天见~

使用说明: 以百度云盘共享,无法下载可邮件联系 安装包:本安装包为tar.gz包,可在linux下直接通过tar -xvzf mysql.tar.gz解压 验证:本安装包已经在centos7.3 minimal系统上测试通过。 mysql version:8.0.14 作者:wangfeihu/w15104 mail:1434613751@qq.com date:2019-2-14 解压安装包后,进入MySQL目录 一.单机安装 1.使用Vi命令打开properties 2.修改mysqlPasswd为你要设置的mysql的root用户密码 3.执行./master.sh 等待安装结束即可 二.主从安装 1.修改properties属性文件mysqlPasswd属性值为你要设置的mysql的root用户密码 2.修改properties属性文件slaveIP属性值为你的另外一台从主机的IP 3.修改properties属性文件password属性值为你的另外一台从主机的root密码 4.执行./masterslave.sh 等待安装结束即可 三.主主安装 1.修改properties属性文件mysqlPasswd属性值为你要设置的mysql的root用户密码 2.修改properties属性文件slaveIP属性值为你的另外一台从主机的IP 3.修改properties属性文件password属性值为你的另外一台从主机的root密码 4.执行./mastermaster.sh 等待安装结束即可 四.创建普通用户 1.修改properties属性文件userdatabase属性值为普通用户拥有的数据库(自动新创建) 2.修改properties属性文件username属性值为普通用户用户名 3.修改properties属性文件userpassword属性值为普通用户密码 4.执行initDB.sh 五.卸载 1.在mysql第一个安装节点,进去解压后的mysql文件夹,执行./uninstall.sh,等待卸载完成
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小虚竹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值