一、MySQL安装
1.安装数据库服务(使用yum安装,便于解决依赖问题)
(1):修改/etc/yum.repos.d/rhel-source.repo文件
修改为本地源,修改内容如下:
file指明为本地文件,enabled=1表明yum源生效
(2):安装数据库服务器。
(3):查看MySQL数据库的是TCP端口3306(这个是重点,面试可能会考)
(4):启动MySQL服务以及查看MySQL服务的状态
二、MySQL的基础知识
1.常见面试题
问:在MySQL5.0以上版本中存在什么特征?会存在什么安全问题吗?
答:在MySQL5.0以上版本中存在一个information_schema数据库,这个数据库中会存放所有数据库中的数据,这样所有数据库中的内容都会被查看。
2.首次登录数据库不需要密码(直接输入mysql -u root,然后回车就可以进入数据库)
当有密码时使用mysql -u root -p进行登录
三、MySQL的单表操作
1.显示数据库
注意:数据库语句后面都用分号来结尾
2.创建数据库
3.使用数据库
4.创建数据库中的表
使用create table 表名(列名 数据格式 是否为空)的形式来创建数据库。上图中primary key()用来指明主键,主键必须唯一且不能重复使用。
f_id:水果编号 s_id:水果供应商编号 f_name:水果名 f_price:水果价格
5.显示数据库中的表
注意:show tables;来查看数据库中的表,因此在执行这条语句时一定要在某个数据库中。
6.查看数据库中表的结构
7.向表中插入数据
注意:插入的数据必须要一一对应,即后面values的值必须与前面的值的顺序相同。
也可以使用下列方法向表中添加数据
这样添加数据时必须非常清楚表的结构,并且后面的数据与表中的列必须要一一对应。但是不建议使用这种方法,因为特别容易错误。
还可以只向表中的某一行插入个别数据
使用该方法向fruit表中插入多条数据,数据如下
8.查看数据库的表中存放的信息
(1):查询表中的所有数据
*号表示匹配所有,select * from fruit;表示查询fruit表中的所有数据。
(2):查询表中指定的列
上图只查询了指定的列,查询f_id和f_name列。查询指定列时,将指定列的名称写在select后面。
(3):使用where语句进行过滤
"%":作用是匹配任意长度的字符
"_":一个"_"只能匹配一个字符
DISTINCT关键字作用于所有的列,而不仅是作用于跟在DISTINCT后面的列。
having与where的区别:having和where都是进行条件过滤的,区别在于where是在分组之前进行过滤的,而having是在分组之后进行条件过滤。
以上为所有数据
select *from fruit limit 3;表示从第0行起连续三条数据
select *from fruit limit 3,2;表示从第3行起连续两条数据
select *from fruit limit 3 offset 2;表示从第2行起连续三条数据
注意:limit查询时的数据是从第0行开始的。
count(*):计算表中的总行数,不管某列是否为空
count(字段值):计算该字段下的总行数