初步了解"数据库"

    作者:课课家教育更新于: 2018-11-21 20:03:39

      课课家:随着信息的多样化,数据库的使用也变得普遍起来,那么数据库到底是什么呢?能用来做些什么呢?下面就和小编一起来了解一下吧!

          初始数据库:

          一、什么是数据库?

      存放数据的仓库

      为什么会有数据库?因为我们所学的数据管理可以用文件来存储 但存在以下缺陷:

      1.IO操作 效率问题

      2.多用户竞争数据

      3.网络访问

      4.用户的验证

      所以产生了数据库。

      conclusion:

      数据库服务器-:运行数据库管理软件

      数据库管理软件:管理-数据库

      数据库:即文件夹,用来组织文件/表

      表:即文件,用来存放多行内容/多条记录

      二、常见的数据库

      关系型 数据之间存在某种关联关系 数据存在硬盘内 速度慢

      Oracle ------目前最好关系型数据库,体现在用户管理,分布式,商业用途收费

      MySQL ------免费开源,功能支持没有Oracle强 但是足以满足中小企业使用,先后被Sun 和 Oracle 收购

      Mysql创始人wedenius担心 Mysql会闭源 于是另起灶炉 搞了MarriaDB

      MariaDB和Mysql 使用方法一模一样

      SqlServer -------属于微软生态链,需要和Windows配合使用

      DB2 ------IBM开发的大型关系型数据库 ,收费的,通常与硬件捆绑销售

      非关系型 数据以key -value的形式来存储 数据存在内存中 速度快

      MongoDB

      Redis

      MemCache

      三、数据库的相关概念

      1、age = 18 一个变量 无法描述清楚数据 称之为一个字段

      2、age = 18,name = Jack,genger = man 一堆变量在一起,可以描述清楚数据 称之为一条记录 对应着文件中的一行

      3、文件需要分门别类 每个文件存储不同的数 一个文件称之为表 文件越来越多 得分文件夹

      4. 一个文件称之为库

      数据库中包含所有内容:

      字段(列)

      记录

      表

      库

      DBMS 数据库管理系统

      数据库服务器 :一个库可以包含多个表 一个表可以包含多条记录 一条记录中有多个字段

      数据库是什么,本质上就是一套C/S架构得socket软件

      四、安装数据库与配置使用环境

      mac安装方法:

      https://www.jianshu.com/p/fd3aae701db9

      win10安装方法:

      https://blog.csdn.net/weixin_41557632/article/details/78943248

      注意:

      1.代码界面版 傻瓜式安装 记住初始密码

      2.绿色解压版

      1. 5.7以后的版本需要先初始化 mysqld --initialize-insecure

      2.启动需要先进入安装目录 比较麻烦 需要添加到环境变量 打开环境变量 将mysql安装目录下的bin加入path变量

      3.将mysqld 加入到windows的系统服

      4.绿色版修改默认密码 修改默认密码需要先登录成功 执行update语句直接修改 user表中的密码

      5.7版本:

      update mysql.user set authentication_string = password("root") where user = "root";

      5.6版本:

      update mysql.user set password = password("root") where user = "root";

      修改密码方式2 不需要登录 需要知道旧密码

      mysqladmin -uroot -p旧密码 password 123

      破解密码,当忘记密码时 无法登录 也就不能值执行update语句

      思路:

      1.启动服务器时 控制它不要加载授权表

      2.无密码登录服务器

      3.执行update mysql.user set authentication_string = password("root") where user = "root"

      4.重启服务器

      用到的系统指令:

      mysqld 直接运行服务器程序

      mysqld --skip-grant-tables 跳过授权表 用于重设密码

      tasklist | findstr mysqld taskkill /f /pid 结束服务器程序

      mysql 运行客户端程序 -u用户名 -p密码 -h主机地址 -P端口号

      mysqld --install 将mysqld注册当windows服务中 在服务中叫MySQL

      windows就是绑定了一个exe程序

      sc delete mysql 删除windows服务

      exit 退出客户端

      修改默认编码

      Mysql5.6版 与5.7版的区别

      五、初识Mysql语句 (每句命令操作后记得加 ;)

      库的相关操作:

      增

      create database 库名称 ;

      删

      drop database 库名称 ;

      改

      alter database 库名称 要改的属性名称 ;

      alter database db1 DEFAULT CHARACTER SET utf8;

      alter database db1 CHARSET utf8;

      注意 在mysql中 utf-8 不能带- 写成utf8

      查

      show databases查看所有数据库 ;

      show create databases 库名称 查看建库的语句 ;

      库命名规范

      表相关的操作:

      增

      建表时要明确数据库

      use db1;

      create table 表名称(字段名 类型(长度),....);

      create table dog(nikename char(10),gender char(1),age int);

      #创建时同时指定数据库

      create table 库名称.表名称(字段名 类型(长度),....);

      删

      drop table 表名;

      改

      alter table 表名称 drop|change|modify|add

      drop 字段名称

      alter table dog drop color;

      change 旧的字段名 新的字段名 新的类型

      alter table dog change gender sex char(2);

      modify 字段名 新的类型

      alter table dog modify color char(5);

      add 字段名称 类型

      alter table dog add color char(10);

      重命名表

      rename table 旧表名称 to 新表名称

      rename table dog to dogtable;

      修改表的属性

      alter table 表名 属性名 值

      alter table dogtable DEFAULT CHARSET gbk;

      查

      show tables;查看所有表

      desc 表名称; 查看表结构

      show create table 表名;查建表语句

      记录相关操作:

      增

      insert into 表名 values(值1,值n,....)

      要求值得顺序 个数 必须与表字段完全对应

      另一种写法

      insert into 表名(字段名1,字段名n,....) values(值1,值n,....)

      可以选择性得插入某些字段 要求值得顺序 必须与表名后面声明得字段一致

      删

      delete from 表名 where 字段名称 = 值

      没有条件的话删除全部数据

      改

      update 表名 set 字段名 = 新的值 where 字段名 = 值

      没有条件的话修改全部

      查

      select *from 表名; *表示通配符 查看所有字段

      select 字段名称1,字段名2.. from 表名;

           小编:这仅仅是迈出了学习的第一步,想学习更多关于数据库的知识,请点击课课家提供的链接,希望对你的学习有所帮助。

课课家教育

未登录