数据库服务概述 、 构建MySQL服务 、 数据库基本管理 、 MySQL数据类型

一,数据库介绍

一、数据库介绍
1.1 什么是数据库?
在这里插入图片描述
1.2 数据是什么?

数据是科学实验、检验、统计等所获得的和用于科学研究、技术设计、查证、决策等的数值。

计算机数据是指计算机中能被识别和处理的物理符号,如数字符号、图形、图像、声音等。数据分为数值型数据(如整数、实数)和非数值型数据(如数字符号、图形、图像、声音等),数据是信息的表现形式。

物流数据是指不能直接满足物流作业系统某一环节的需要,但又与之密切相关,只有经过一系列的信息处理之后才能满足需要的物流情报;而那些能够直接应用或者经过简单处理后就能在某一作业环节发挥作用的物流数据,则称为物流信息。

会计数据是指用于描述各种经济业务属性的数据,例如:银行存款100万元、同定资产800万元、注册资本5000万元和利润总额130万元等

1.3 提供数据库服务的软件有哪些?

在这里插入图片描述
1.4 如何决定使用哪种软件 搭建数据库服务
是否要花钱买?是否跨平台?

1.5 专业术语:

DB DBMS DBS

在这里插入图片描述
1.6, 特点及应用

在这里插入图片描述

二、搭建MySQL数据库服务器

软件安装下载

在这里插入图片描述

	  2.1 MySQL软件介绍

MySQL是世界上最受欢迎的开源数据库软件,其软件在其历史上的下载或分发超过1亿份。MySQL以其优越的速度、可靠性和易用性成为Web、Web2.0、SaaS、ISV、电信公司和前瞻性公司IT经理的首选,因为它消除了与现代在线应用程序的停机、维护和管理相关的主要问题。

世界上许多规模最大、增长最快的公司使用mysql来节省时间和金钱,为他们的高容量网站、关键业务系统和打包软件提供动力–包括雅虎、阿尔卡特朗讯、谷歌、诺基亚、youtube、维基百科和Booking.com等行业领先企业。

MySQL的旗舰产品是MySQLEnterprise,这是一套全面的经过生产测试的软件、积极主动的监控工具,以及在可负担的年度订阅中提供的优质支持服务。

MySQL是LAMP(Linux、Apache、MySQL、PHP/Perl/Python)的关键部分,它是快速增长的开源企业软件栈。越来越多的公司使用LAMP代替昂贵的专有软件栈,因为它的成本较低,而且不受平台锁定。

MySQL数据库由太阳微系统是世界上最大的开源软件贡献者之一。MySQL最初是由两个瑞典人和一个芬兰人在瑞典创建和开发的:David
Axmark、Allan
Larsson和Michael“Monty”Wdenius,他们自20世纪80年代以来一直在一起工作。更多关于MySQL的历史信息是见维基百科

netstat -utnlp | grep :3306 口号 //查看服务信息
ps -C mysqld //查看进程

rpm -qa | grep -i mysql | wc -l //查看包含mysql 的软件 wc -l 统计数量

相关参数

在这里插入图片描述

初始密码

在这里插入图片描述

修改root密码

alter user root@“localhost“ identified by ”密码“; alter :修改 identified :身份

在这里插入图片描述

连接方式

在这里插入图片描述

数据存储流程

1,连接数据库服务器
2,建库
3,建表
4,插入记录
5,断开连接

MySQL管理环境

SQL命令使用规则
命令不区分不大小(密码,变量值除外)
每条SQL命令以;结束
默认命令不支持Tab键自动补齐
\c 终止SQL命令

MySQL 命令分类

在这里插入图片描述

库管理命令

在这里插入图片描述

库管理规则

库名 命令规则

在这里插入图片描述

修改密码策略

2.2 搭建MySQL数据库服

安装软件

		]# tar -xvf mysql-5.7.17.tar
			
      ]# yum -y  install mysql-community-*.rpm

[root@HOST51 upload]# systemctl start mysqld //起服务

[root@HOST51 upload]# systemctl enable mysqld //开机自启服务

]# ls /var/lib/mysql                                   //查看数据库目录
]# netstat -utnlp  | grep  3306                 
  
]# grep "password" /var/log/mysqld.log         //过滤日志密码 

]# mysql -uroot -p'QikKhtR3Ow=:'                 //首次输入密码随机密码

            mysql> alter user root@"localhost" identified by "123qqq...A";      //修改密码
            mysql> show databases;                                                                //显示库
            mysql> quit                                                                                      //退出

]# mysql -uroot -p123qqq…A
mysql>

修改密码策略 并 设置新密码为123456   

mysql> show variables like “%password%”; // 查看变量
variables :变量
mysql> set global validate_password_policy=0; // 修改密码策略 (命令行配置)
set :修改 global : 全局
mysql> show variables like “validate_password_policy”; //查看密码策略
mysql> set global validate_password_length=6; 命令配置 //修改密码长度 (命令行配置)

mysql> show variables like “validate_password_length”; //查看密码长度

mysql> alter user root@“localocal” identified by “123456”; // 验证配置

mysql> exit
]# mysql -uroot -p123456
mysql>

		]# vim /etc/my.cnf  永久配置
		   [mysqld]
		   validate_password_policy=0
		   validate_password_length=6 
                    :wq    
		]# systemctl restart mysqld
		
		]# mysql  -uroot -p123456  
		mysql> show variables like "%password%";

	systemctl  stop  mysqld
            rm  -rf /var/lib/mysql/*
            systemctl  start  mysqld
            grep "password" /var/log/mysqld.log 

       MySQL数据库服务的基本使用
	1 连接数据库服务的方式
	2 把数据存储到数据服务器上过程
	3 sql命令使用规则
	4 sql命令分类

常用管理命令演示

show databases; //显示已有的库

select user(); //显示连接用户

use 库名; //切换库

select database(); //显示当前所在的库

create database 库名; //创建新库 (要知道库名的命名规则)

show tables; //显示已有的表
drop database 库名; //删除库

表管理命令

表记录命令

信息类型
在这里插入图片描述

字符类型

定长 : char
在这里插入图片描述
变长varchar
在这里插入图片描述
drop table 表 删除表
create database db1;
create table db1.sutinfo( name char(10) , homeaddr char(20) ); //创建表

use db1; //切换库
show tables;
mysql> desc sutinfo; // 显示表结构

mysql> insert into db1.sutinfo values (“bob”,“usa”),(“lilei”,“china”); //插入表内容

insert 插入 into 到 …中 values 值

mysql> insert into db1.sutinfo values (“jerry”,“js”);

mysql> select * from db1.sutinfo; //显示表所有信息
mysql> select name from db1.sutinfo;

mysql> update db1.sutinfo set homeaddr=“bj”;
mysql> update db1.sutinfo set homeaddr=“sh” where name=“lilei”;

mysql> delete from db1.sutinfo where name=“lilei”; //删除表信息 where :条件 from 来自

mysql> delete from db1.sutinfo ; 查看表结构
mysql> select * from db1.stuinfo;
mysql> show tables;
mysql> drop table db1.sutinfo; 删除表结构

建表时指定表的字符集 使其可以存储中文

default charset=utf8; (添加到(库)(表)最后) 可以添加中文数据

mysql> create table db1.user2(name char(3))default charset=utf8;
mysql> show create table db1.user2 \G;
mysql> insert into db1.user2 values (“张三疯”);
mysql> select * from db1.user2;

MySQL数据类型

         **字符类型 char  和 varchar**  

mysql> create table db1.t1(class char(7),name char(20),email varchar(50) );

mysql> insert intodb1.t1 values(“nsd1911”,“bob”,“bob@163.com”);

mysql> insert into db1.t1 values(“nsd1911”,“jerry”,“jerry@qq.com”);
msyql> select * from db1.t1;

desc mysql.user;

数值类型

           整数类型 微小整型  小整型  大整型  极大整型

mysql> create table db1.t2(name char(10) , age tinyint unsigned);

只能存整数
在这里插入图片描述

mysql> insert into db1.t2 values (“bob” , 256); //报错案列 最大255
ERROR 1264 (22003): Out of range value for column ‘age’ at row 1

mysql>
mysql> insert into db1.t2 values (“bob” , 25);
Query OK, 1 row affected (0.00 sec)

mysql> insert into db1.t2 values (“tom” , -1);
ERROR 1264 (22003): Out of range value for column ‘age’ at row 1

mysql>
mysql> insert into db1.t2 values (“tom” , 1);
Query OK, 1 row affected (0.01 sec)

mysql> insert into db1.t2 values (“jerry” , 19.5); //四舍五入 ,取整数 20

mysql> insert into db1.t2 values (“jack” , 19.4); //四舍五入 ,取整数 19

mysql> select * from db1.t2; //显示表内所有内容

浮点型 11.88

    	单精度 float
	双精度 double

在这里插入图片描述
单精度 4个字节 (4个字节就是2的32次方)
双精度 8 个字节

小数的组成
整数.小数 288.22
字段名 float(n,m) xxx.xx 999.99 ~ -999.99
字段名 double(n,m)
n表示总位数 个数 xxxxx.xx 99999.99 ~ -99999.99
m表示小数位 个数

create table db1.t3 (name char(10) , gz float(7,2) );

mysql> desc db1.t3;

mysql> insert into db1.t3 values(“jack”,6888);

mysql> select * from db1.t3;

mysql> insert into db1.t3 values(“jack”,18888.23);

mysql> insert into db1.t3 values(“jack”,118888.23);

日期时间类型

类型

日期时间datetime
-范围 ;1000-01-01 00:00:00~9999-12-31 23:59:59
-格式 :年月日 时分秒

日期时间 timestamp
-范围 : 1970-01-01 00:00:00 ~2038 01-19 00:00:00
-格式:年月日 时分秒

日期 date
范围:0001-01-01~9999-12-31
年yearr
-范围 :19201~2155
时间 time
HH:MM:ss

关于日期时间字段
-当未给timestamp 字段赋值时,自动以当前系统时间赋值,而datetime 值为NULL (空值)

year 类型

  • 要求使用4位数字赋值
  • 当使用2位数字赋值时:
  • 01~69视为 2001~2069
  • 70~99视为 1970~1999 时间函数 MySQL服务内置命令
    -可以使用时间函数给字段赋值
  ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200214194538182.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTk2OTU0OA==,size_16,color_FFFFFF,t_70)
  格式  :
   show now();                     // 显示当前日期时间
   select year(now());           //显示年
   select   month(now());       //显示月份 

   select    curtime();             //显示当前时间
   select    curdate();             //显示当前期

结构 下表
create table db1.t1 (name char(10),your_start year,uptime time,birthday date,party datetime); 创建表格,时间类型 在这里插入图片描述

枚举类型

enum 单选

在这里插入图片描述

set 多选

在这里插入图片描述
下表构建图
create table db1.t2 (name char(15),likes set("eat","game","film","it"),enum("boy","girl")); //创建表格 枚举类型
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值