数据库:Mysql数据库安装及使用

目录

一.数据库介绍

1.基本概念

2.数据库类型

3.版本演变

二.MySQL安装

1.官网下载yum安装

2.手动配置yum安装

三.MySQL基本操作

1.登录与改密

2.检测数据库健康

3.库的创建和使用

4.数据类型

5.修饰符

6.表的创建和使用

7.分组查询

​编辑

8.查询排序及取值

​编辑


一.数据库介绍

1.基本概念

  1. 数据:描述事务的符号记录
  2. 表:将不同的记录组织在一起
  3. 数据库:表的集合
  4. 主键:不能重复,每个表中只能有一个。且不能为空。
  5. 唯一键:一个表可以有多个,且可以为空
  6. 域:属性的额取值范围,如性别只能是男和女俩个值。

2.数据库类型

  • 关系型数据库:结构是二维数据库表,二维表当中每个字段(列)用来描述对象的一个属性,
    每个记录(行)用来描述一个对象的信息(完整信息)表与表之间可能存在联系。
  • 非关系型数据库:是一种数据结构化存储方法的集合,可以是文档或者键值对等。

3.版本演变

MySQL:5.1--> 5.5 --> 5.6 --> 5.7 --> 8.0(没有6.0、7.0等)

MariaDB:5.1 -->5.5 -->10.0--> 10.1 --> 10.2 --> 10.3 --> 10.4 --> 10.5(从5.1开始,跳到10.0)

二.MySQL安装

1.官网下载yum安装

①由于centos7系统无Mysql的yum源只有MariaDB的,所以需要到官网下载yum源。

②访问官网网址mysql.com,选择DOWNLOADS。

③ 拉倒最下面选择MySQL Community(GPL) Downloads>>。

④选择MySQL Yum Repository,进入后选择自己对应的版本下载。

⑤ 下载若提示需要登录点击左下角No thanks,just start my download即可。

⑥下载完成后将文件拖入机器中,然后rpm -ivh 文件名安装后就可以yum install mysql -y安装mysql了。

⑦补充:以上步骤是安装最新版mysql,若需要安装特定版本则在第三步选择MySQL Community(GPL) Downloads>>后选择右下角的Download Archives,进入后选择MySQL Community Server,根据自己的需求下载对应版本包。

2.手动配置yum安装

①手写配置文件清华大学源,5.7.41版本,无初始密码。

bash 复制代码
tee /etc/yum.repos.d/mysql.repo <<EOF
[mysql]
name=mysql5.7
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/
gpgcheck=0
EOF
#多行重定向写mysql.repo配置清华大学mysql的yum源。
yum  install  mysql-community-server -y
#安装mysql数据库

②手写配置文件官方源,5.7.3版本,有初始的随机密码。

bash 复制代码
tee /etc/yum.repos.d/mysql.repo <<EOF
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/
enabled=1
gpgcheck=0
EOF
#多行重定向写mysql.repo配置官网mysql的yum源。
yum -y install  mysql-community-server
#安装mysql数据库
systemctl start mysqld
#启动数据库
grep password /var/log/mysqld.log
#在/var/log/mysqld.log日志文件中过滤password关键字查看初始的登录密码,注意无前面的空格
mysql -uroot -p'查到的随机密码'
#登录数据库,注意密码有特殊符号是使用引号

三.MySQL基本操作

1.登录与改密

①启动服务并在日志中过滤出初始密码登录数据库。

bash 复制代码
systemctl start mysqld
#启动服务
grep  password /var/log/mysql.log
#过滤password寻找初始密码,如下图
mysql -uroot -p'初始密码'
#登录数据库,-uroot指登录数据库的用户是root -p密码是数据库用户root的密码。

②登录成功后修改数据库密码

bash 复制代码
alter user root@localhost identified  by 'Admin@123';
#修改用户root@localhost的密码为Admin@123,注意数据库的sql语句需要以;结尾才能执行成功
quit。root@localhost和[email protected]是俩个用户。
#退出数据库
mysql -uroot -p'Admin@123'
#使用新密码登录数据库成功,密码修改成功

2.检测数据库健康

bash 复制代码
mysqladmin -uroot -p'密码'  ping
#使用mysqladmin管理命令ping数据库若正常返回mysql is alive。
若数据库不正常则返回连接失败。

3.库的创建和使用

①.登录数据库后输入 show databases; (注意分号结尾)表示查看所有数据库,如下是默认库截图。

②.show create database 库名;查看某个库信息,如下查看默认库sys信息。

③.create database 库名; 创建数据库XX,如下创建class库。

④. use 库名;进入某个库,如下进入class库。

4.数据类型

①整数型:

  • tinyint(m) 1个字节 范围(-128~127) 有一个正或负的表示符。
  • smallint(m) 2个字节 范围(-32768~32767)。
  • int(m) 4个字节 范围(-2147483648~2147483647)。

②字符串:

  • char(n) 固定长度,最多255个字符,注意不是字节。
  • varchar(n) 可变长度,最多65535个字符。

5.修饰符

  1. NULL:数据列可包含NULL值,默认值。
  2. NOT NULL:数据量不允许为NULL值,*为必填项。
  3. DEFAULT:默认值,若定义某个为默认值则不填写字段即为此值。
  4. PRIMARY KEY:主机,所有记录中此字段不能重复且不能为nulll。
  5. UNIQUE KEY :唯一键,所有记录中此字段的值不能重复,可以为null。
  6. AUTO_INCREMENT:自动递增,适用于整数数据类型。
  7. ENUM:多选,如('M','F'),字段只能从M和F中选一个。
  8. UNSIGNED:取消负数

6.表的创建和使用

①创建表:create table 表名(字段1 字段类型 修饰符,字段2 字段类型 修饰符);如下创建一个test表包含id,name,age,gender字段。且id为主键自增长,gender设置多选M和F默认为M。

② 查看库中所有表:show tables;

③查看表结构:describe 表名;

④修改表名:alter table 旧表名 rename 新表名;

⑤表中添加字段:alter table 表名 add 字段 数据类型;

⑥修改字段:alter table 表名 change 旧字段名 新字段名 数据类型不能变;

⑦表中添加数据:insert 表名(字段1,字段2...) values(字段1值,字段2值),(字段1值,字段2值)

查看表中数据:select 字段(*表示全部) from 表名;

⑧修改字段内容:update 表名 set 修改字段=修改字段值 范围;

范围:不填写则表示该字段所有值全修改为某个值,where 字段=限制条件,例如where id=2。则表示修改id字段为2的,where age=19则表示修改age字段为19的字段值。

⑨.删除表中内容:delete from 表名 范围;

清空表中内容:delete from 表名;

库中删除表:drop table 表名;

7.分组查询

①分组:GROUP BY

使用分组,则必须显示分组内容或聚合函数内容。

格式:select 字段,(使用聚合函数是加逗号) 聚合函数或分组字段,from 表,group by 字段

②聚合函数

avg():平均数

count():数量

sum():求和

max():最大值

min():最小值

8.查询排序及取值

①ORDER BY:根据指定的字段对查询结果进行排序。

升序:ASE默认可以不写

降序:DESC

②LIMIT:对查询结果进行输出行数数量限制。

使用格式:查询语句 limit 范围

范围1:limit 数字 表示只显示多少行;

范围2:limit 数字,数字) 表示从第一个数字结束后显示几个数字;

相关推荐
袖清暮雨42 分钟前
ClickHouse讲解
大数据·数据库·数据仓库·clickhouse·oracle
vvilkim1 小时前
MongoDB 备份与恢复策略全面指南:保障数据安全的完整方案
数据库·mongodb
是桃萌萌鸭~1 小时前
使用 mysqldump 获取 MySQL 表的完整创建 DDL
数据库·mysql
泽韦德1 小时前
【MySQL】第11节|MySQL 8.0 主从复制原理分析与实战(一)
android·数据库·mysql
chxii1 小时前
10.2sql
数据库·sql·sqlite
TechTorch1 小时前
数据库大学实验二
数据库·经验分享·笔记·mysql
瀚高PG实验室1 小时前
V9数据库替换授权
数据库·oracle·瀚高数据库
瀚高PG实验室1 小时前
Oracle迁移到瀚高之后,空值问题处理(APP)
数据库·oracle·瀚高数据库
1977835461 小时前
MySQL 数据库初体验
数据库·mysql
2501_914286491 小时前
MySQL数据库初体验
数据库·mysql