序言

与其他的小型数据库诸如oracle,SQLServer等相比,MySQL自有它的不足之处,然而这丝毫也没有降低它受欢迎的程度。对于通常的个人使用者和中大型企业来说,MySQL提供的功能早已绰绰有余,但是因为MySQL是开放源码软件linux命令tar,因而可以大大减少总体拥有成本,所以被广泛的应用在各行各业。受欢迎,应用广,所以通常都是笔试中的必问的知识点,所以接下的一段时间,追随小编一上去学习下mysql的相关知识吧!小编将从mysql的安装,构架,事务,索引linux手机,锁,分库分表,性能优化等多个方面进行分享。百里之行源于足下,明天我们从mysql的基础安装篇开始,你们快来一起学习吧!

环境打算环境检测

这一步主要是检测当前centos系统中,之前是否安装过mysql,假如安装过,则须要完全删掉mysql相关的一些包,以防止发生一些不可思议的报错,你懂的

rpm -qa|grep mysql

登录后复制

linux下安装wget_使用yum安装wget_linux yum安装wget

rpm -e mysql-community-common-5.7.36-1.el7.x86_64
rpm -e mysql-community-client-5.7.36-1.el7.x86_64
rpm -e mysql-community-server-5.7.36-1.el7.x86_64
rpm -e mysql-community-libs-compat-5.7.36-1.el7.x86_64
rpm -e mysql-community-libs-5.7.36-1.el7.x86_64

登录后复制

find / -name '*mysql*'

登录后复制

# 以 /etc/my.cnf等为例
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql 
rm -rf /var/lib/mysql 
rm -rf /usr/lib64/mysql

登录后复制

(根据以上命令,全部删掉mysql相关文件)

开始安装使用yum进行安装

linux yum安装wget_linux下安装wget_使用yum安装wget

#下载yum源 
wget https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm 
#安装yum源 
rpm -ivh mysql80-community-release-el7-3.noarch.rpm 
#使用此命令可以查看 MySQL Yum 存储库中的所有子存储库,并查看其中哪些子存储库已启用或禁用 
yum repolist all | grep mysql 
#关闭mysql8的下载源 
yum-config-manager --disable mysql80-community 
#开启mysql5.7下载源 
yum-config-manager --enable mysql57-community 
#安装mysql5.7 
yum install -y mysql-community-server

登录后复制

配置

vim /etc/my.cnf

登录后复制登录后复制

更改内容如下:

[mysqld] 
# MySQL设置大小写不敏感:默认:区分表名的大小写,不区分列名的大小写 
# 0:大小写敏感 1:大小写不敏感 
lower_case_table_names=1 
# 默认字符集 
character-set-server=utf8
# 设置时区
default-time_zone = '+8:00'

登录后复制

启动

systemctl start mysqld

登录后复制

设置root用户密码

安装了mysql5.7以后初始密码不再默认为空,初始密码会生成一个默认密码。密码会输出到mysql日志中。日志文件的位置在/var/log/mysqld.log

vim /var/log/mysqld.log

登录后复制

执行vim命令后linux yum安装wget,输入”/password”,如下截图的位置即为初始密码

使用yum安装wget_linux yum安装wget_linux下安装wget

#1.登录mysql 
[root@localhost ~]# mysql -uroot -p't)WMH;uUe9Jn' 
#mysql5.7以后对密码的强度是有要求的,必须是字母+数字+符号组成的,如果想设置简单密码例 如‘root’,需要做以下设置 
#2.设置密码长度最低位数 
mysql> set global validate_password_length=4; 
#3.设置密码强度级别 
mysql> set global validate_password_policy=0; 
#4.修改密码 
mysql> alter user 'root'@'localhost' identified by 'root';

登录后复制

密码复杂度的一些常规设置如下:

Policy

TestsPerforme

0orLOW

Length

1orMEDIUM

numeric,lowercase/uppercase,andspecialcharacters

linux yum安装wget_使用yum安装wget_linux下安装wget

2orSTRONG

Length;numeric,lowercase/uppercase,andspecialcharacters

注意:默认是1,即MEDIUM,所以刚开始设置的密码必须符合厚度,且必须富含数字linux yum安装wget,大写或小写字母,特殊字符。

MySQL远程联接授权登陆mysql

## -u:指定数据库用户名 
## -p:指定数据库密码,
## 记住-u和登录密码之间没有空格
mysql -uroot -proot

登录后复制

授权

授权命令:

grant 权限 on 数据库对象 to 用户

登录后复制

示例:

## 授予root用户对所有数据库对象的全部操作权限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

登录后复制

说明:

关掉linux的防火墙

虽然以上我们的mysql安装步骤就早已结束了,防火墙的设置只是针对有内网访问mysql的需求,这儿看实际需求,须要的话就设置一下

systemctl stop firewalld(默认) 
systemctl disable firewalld.service(设置开启不启动)

登录后复制

忘掉密码怎样办

mysql密码是不是都是记住密码,长时间不输入密码,致使忘掉了,不晓得你是不是,总之小编常常忘掉,所以记录下忘掉密码后重置密码的方式

更改配置

vim /etc/my.cnf

登录后复制登录后复制

更改内容如下:

## 在/etc/my.cnf添加如下内容即可
skip-grant-tables

登录后复制

说明:skip-grant-tables选项的意思是启动MySQL服务的时侯跳过权限表认证。启动后,联接到MySQL的root将不须要口令(危险)。此项设置很危险,生产环境中谨记勿使用!生产环境中谨记勿使用!生产环境中谨记勿使用!

重启mysql

systemctl restart mysqld.service

登录后复制登录后复制

登陆mysql

## 使用root登录mysq
mysql -u root
## 切换到到mysql库
use mysql
## 更新root密码
update user set authentication_string=password('123456') where User='root';

登录后复制

更改配置

将/etc/f里的skip-grant-tables配置项删掉

重启mysql

systemctl restart mysqld.service

登录后复制登录后复制

重置密码完成,可以愉快的使用新密码登入mysql了!

结束

这次分享的mysql安装就那么多了,须要交流学习可以关注公众号【温故知新之java】,相互学习,一起进步

以上就是MySQL 基础安装篇:从环境准备到架构、事务、索引等多方面分享的详细内容,更多请关注小闻网其它相关文章!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。