Day34 数据库(一)数据库简介,MySQL的安装与基本语法
作者:互联网
1.数据库
什么是数据(Data)
数据就是描述事物的符号记录,描述事物的符号可以是数字,文字,图片等,在计算机中要描述一个事物,就要抽取事物的特征,组成一条条记录.
什么是数据库(DataBase,简称DB)
数据库就是存放数据的仓库,只不过现在这个仓库是在计算机存储设备上,按照一定的格式存放
数据库中的数据具有较小的冗余度,较高的数据独立性和易扩展线
什么是数据库管理系统(Database Management System,简称DBMS)
数据库管理系统就是管理数据和数据库的应用程序
数据库管理数据库分为两类:
关系型数据库
数据和数据之间是有关联和限制的
关系型数据库通常就是表结构,所以我们在使用这一类数据库时第一步需要确定表的结构
常见的关系型数据库有:MySQL,Oracle,sqlite,db2,sql server
非关系型数据库
通常都是以k,v键值的形式存储数据
常见的有:Redis,MongoDB(文档型数据库,非常接近关系型的非关系型数据库),memcache
注意:在我们Python的开发中,最常使用的是MySQL数据库
2.初识MySQL
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS(Relational Database Management System,关系数据库管理系统) 应用软件。
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。MySQL数据库内的数据内容分类
首先一个数据库由不同大小的库组成,一个库又由不同大小的表组成,一个表由不同大小的记录组成
我们可以将数据库类比成计算机内部的文件系统 库 >>> 文件夹 表 >>> 文件 记录 >>> 文件内一行行的数据叫做一条条的记录 表头:表格的第一行数据 字段:字段名+字段类型
3.MySQL的下载与安装
mysql为我们提供开源的安装在各个操作系统上的安装包,包括ios,linux,windows。
mysql的安装、启动和基础配置 —— linux版本 (https://www.cnblogs.com/Eva-J/articles/9664401.html)
mysql的安装、启动和基础配置 —— mac版本 (https://www.cnblogs.com/Eva-J/articles/9664401.html)
mysql的安装、启动和基础配置 —— windows版本 (https://www.cnblogs.com/Eva-J/articles/9669675.html)
4.使用MySQL前的一些小操作
MySQL也是一个基于socket通信的c/s架构的软件,所以他也具有服务端和客户端,服务端的启动程序是bin文件夹下的mysqld,客户端的启动程序是bin文件夹下的mysql
在运行MySQL前最好将bin目录添加到系统环境变量下,这样我们可以直接打开程序
首先我们使用管理员身份打开cmd终端
服务端的打开:直接输入mysqld
客户端的打开:重开一个cmd终端窗口,输入mysql -h 127.0.0.1 -p 3306 -uroot -p,如果是本机IP和端口号可省略
客户端的退出:exit或者quit
查看所有的数据库:show databases
查看某个进程:退出数据库之后在终端输入tasklist |findstr +名称
杀死某个进程:taskkill /F /PID+进程号
注意:1.MySQL在初始登录的时候是没有密码的,直接回车即可,
2.MySQL中的sql语句,是以分号结束的,不敲分号默认没有输完,客户端还会继续让我们输入
制作环境变量
将启动文件所在的路径添加到系统的环境变量中
注意:配置完之后一段要重新启动mysql服务端及cmd终端
将mysqld制作成系统服务
制作系统服务 你的cmd终端一定要是管理员身份
mysqld --install
修改密码
没有密码的情况下
mysqladmin -uroot -p password 123
有密码的情况下
mysqladmin -uroot -p123 password 123456
当命令输入错误的时候 可以用\c取消前面的命令 cancel
破解密码
先将已经启动的服务端停掉
1.跳过用户名和密码的验证功能 启动服务端
mysqld --skip-grant-tables 启动服务端 跳过授权表
2.修改管理员用户对应的密码
update mysql.user set password=password(123) where user='root' and host='localhost';
3.关闭当前服务端 重新以校验用户名密码的方式启动
4.正常以用户名密码的方式 连接mysql服务端
配置文件
\s查看 mysql服务端简单配置
通常情况下配置文件的后缀都是ini结尾
mysql自带的配置文件不要修改
但是你可以新建一个配置文件 my.ini
mysql服务端在启动就会自动加载你的my.ini配置文件内的配置
修改完配置文件之后需要先将服务端停止 重新启动 才能生效
修改了配置文件一定要重启服务端
4.MySQL内的基本操作
1. 操作文件夹(库) 增:create database db1 charset utf8; 查:show databases; 查所有
show create database db1; 查单个 改:alter database db1 charset latin1; 修改编码 删除: drop database db1; 删库 2. 操作文件(表) 先切换到文件夹下:use db1; 指定库
select database(); 查看当前所在的库 增:create table t1(id int,name char); 查:show tables; 查看某个库下面的所有的表
show create table t1; 查看单个表的信息
desc t1; 查看表中的描述信息 改:alter table t1 modify name char(3); alter table t1 change name name1 char(2); 删:drop table t1; 3. 操作文件中的内容(记录) 增:insert into t1 values(1,'egon1'),(2,'egon2'),(3,'egon3'); 可以插入多个 查:select * from t1; 查询所有的字段信息
select name from t1; 查询所有字段的指定信息
select name from t1 where id=1; 查询带有筛选条件的字段信息 改:update t1 set name='sb' where id=2; 修改数据的一个字段信息,可以修改多个 删:delete from t1 where id=1; 删除指定条件的数据
delete from t1; 删除表中的所有数据 清空表: delete from t1; #如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。 truncate table t1;数据量大,删除速度比上一条快,且直接从零开始, *auto_increment 表示:自增 *primary key 表示:约束(不能重复且不能为空);加速查找
标签:配置文件,数据库,MySQL,t1,mysql,Day34,服务端 来源: https://www.cnblogs.com/sxchen/p/11366305.html