一、MySQL介绍
1、介绍MySQL
数据库是数据的仓库,与普通的数据仓库不同的是,数据库依据数据结构来组织数据,因为数据结构的存在,所以看到的数据是条理化的
数据库和普通文件系统的区别在与:数据库拥有数据结构,能都快速查找对应的数据
常说的MySQL数据库,其实就是MySQL数据库管理系统:数据库管理系统是一个软件,是数据库服务的体现
根据数据结构的不同,数据库分为关系型数据库和非关系型数据库
2、 MySQL相比Excel
MySQL比Excel更适合用于处理大量数据的存储和管理,原因如下:
● 数据量处理能力:MySQL是一个关系型数据库管理系统,可以处理大量数据,支持数百万、甚至数十亿条记录的存储和查询。而Excel对于大规模数据的处理能力有限,容易出现速度慢、崩溃等问题。
● 数据库结构:MySQL使用表格结构进行数据存储,可以定义各种数据类型和约束条件,并支持多个表之间的关联关系。这样,可以更好地组织和管理数据,减少数据冗余和错误。Excel则是单个文档形式,仅支持一个表格,数据存储相对简单。
● 数据安全性:MySQL提供了丰富的安全机制,包括用户权限管理、数据加密、备份和恢复等功能,以保护数据的安全性。Excel相对较弱,很容易受到病毒、修改和意外删除等风险。
● 并发处理:MySQL可以支持多个用户同时对数据库进行读写操作,实现并发处理。Excel则是单用户操作,不支持多人同时编辑和更新数据。
● 数据处理功能:MySQL提供了强大的数据处理功能,可以通过SQL语句进行复杂的查询、筛选、排序、分组等操作,满足各种数据处理需求。Excel的功能相对简单,只能进行简单的计算、筛选和排序,不适合处理复杂的数据分析和处理。
3、什么是关系型数据库
关系型数据库是依据关系模型创建数据库
关系模型就是一对一,一对多,多对多等关系模型,关系模型就是存储格式是以行列组成的二维表格,所以一个关系型数据库就是由二维表之间的联系所组成的一个数据组织
关系型数据库可以很好的存储一些关系模型的数据,比如老师对应学生的数据(“多对多”),一本书对应多个作者(“一对多”),一个人对应一个身份证号码(“一对一”)
4、什么是非关系型数据库
由于关系型太大和复杂,所以一般使用“非关系型数据”来表示其他类型的数据库,非关系型的模型比如:
● 列模型:储存的数据是一列一列,关系型数据库以一行作为一个记录,列模型数据库以一列作为一个记录
●键值对模型:存储的数据是一个个键值对,比如name:list
●文档类模型:以一个个文档来存储数据,类似于键值对
二、MySQL 安装和配置
MySQL版本:MySQL5.7的安裝
在线安装:
1、下载yum repository
记住当前所在用户的位置,安装前请先安装上节课的yum安装教程,以及yum换源,不然之后yum会报错
在远程连接工具或者虚拟机内输入以下命令
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
或者下列命令
wget http://repo.mysql.com/mysql-community-release-el7-10.noarch.rpm
2、安装yum Repository
yum -y install mysql57-community-release-el7-10.noarch.rpm
3、安装MySQL5.7的服务
yum -y install mysql-community-server
此时出现错误,原因是Mysql的GPG升级了,需要重新获取 ,再次输入下列命令
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
输入完成之后再次使用安装上述命令重新安装一遍,即
yum -y install mysql-community-server
或者将上述两个安装命令都重新执行一下也行
离线安装:
1、卸载已有的MySQL文件
rpm -qa|grep mysql
rpm -qa|grep MySQL
rpm -qa|grep mariadb
将上述的六条红色文件对应内容删除
其中xxx是上述六条内容的文件名,每条用空格隔开
rpm -e --nodeps xxx
2、因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
yum -y remove mysql57-community-release-el7-10.noarch
3、卸载mysql 删除依赖包
rpm -qa |grep -i mysql
在执行下列命令
yum remove mysql-community mysql-community-server mysql-community-libs mysql-community-common
4、清理文件
find / -name mysql
先执行上条命令,如果有内容,则使用下列命令删除
rm -rf 文件名
5、安装mysql
如果有离线的包可以使用以下方式
将rpm文件放入linux中
然后使用rpm文件包
MySQL服务端的安装包为server,安装的顺序为:common -> libs -> client -> server。
需要记住离线包存放于MySQL中的位置
一移动完成后,使用cd命令进入存储包的文件下,图示为创建文件夹后将包存了进去,然后再cd进这个文件夹下
输入以下命令
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
如果上述安装server时出错,再依次使用下列命令
yum install net-tools
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
三、后续命令
完成前面的安装操作后一次运行下列命令
1、开机自启动
systemctl enable mysqld.service
3、启动mysql
systemctl start mysqld.service
3.查看状态
systemctl status mysqld.service
4.获取临时密码
grep "password" /var/log/mysqld.log
5.登录mysql
mysql -uroot -p
此时登录密码为上述的临时密码
6.关闭密码复杂验证
set global validate_password_policy=0;
set global validate_password_length=1;
7.设置密码
将密码设置为123456
alter user user() identified by "123456";
8.修改权限
一条一条复制下列命令
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; --修改权限
flush privileges; --刷新权限
select host,user,authentication_string from user; --查看权限
exit; -- 退出mysql
最后在输入exit;退出MySQL
9、卸载yum Repository
因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉
yum -y remove mysql57-community-release-el7-10.noarch
注意:如果安装的过程出现了错误,需要卸载mysql的方法
卸载mysql、删除依赖包
rpm -qa |grep -i mysql
yum remove mysql-community mysql-community-server mysql-community-libs mysql-community-common
10、清理文件
find / -name mysql
rm -rf 文件名
四、修改字符集(必须要做)
使用命令进入MySQL
mysql -uroot -p
进入MySQL后再输入以下命令
show variables like "%character%";
得到以下状态
目的是将其中value对应的latinl修改为utf-8
然后再退出
使用命令
vim /etc/my.cnf
得到以下页面
将下列内容复制到其中
[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
重启mysql,注意是mysqld
# linux中运行
# service mysqld restart
systemctl restart mysqld
此时再次进入MySQL
输入命令
show variables like "%character%";
得到以下状态即修改成功