Day34 数据库(一)数据库简介,MySQL的安装与基本语法 mysql的安装、启动和基础配置 —— windows版本

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 表示:约束(不能重复且不能为空);加速查找

猜你喜欢

转载自www.cnblogs.com/sxchen/p/11366305.html