zoukankan      html  css  js  c++  java
  • 初识数据库

    初识数据库    >>>思维导图>>>中二青年

    数据库概念

    SQL能干嘛呢?它就是一款软件,安装在任何一台计算机或者服务器上的时候,只要告诉它擦混关键一个文件,新增一个数据,删除一个数据,它就能帮我去做想要的操作。SQL就是用来帮我们操作文件的。

    软件目录开发规范规定了数据的存放位置,但是这样的存取操作都是在本地存取数据,无法基于互联网通信,所以我们需要保存数据到一个公共的地方,所有的用户涉及到数据相关都必须来这个公共地方查找。

    MySQL的本质就是一款基于网络通信的应用软件,任何基于网路通信的软件,底层都是socket

    服务端-基于socket通信-收发消息-SQL语句(是一个公共的标准)
    客户端-基于socket通信-收发消息-SQL语句(是一个公共的标准)
    ps:MySQL不仅支持MySQL的客户端来操作,也支持其他编程语言直接操作,但不同编程语言操作的语法都不一样

    MySQL其实可以把它看成一款支持远程操作文件的软件

    一些数据常用的名词例如

    库 >>> 文件夹
    表 >>> 文件
    记录 >>> 文件内一行行的数据叫做一条条的记录
    表头 >>> 表格的第一行数据
    字段 >>> 字段名+字段类型

    DBMS:数据库管理系统

    数据库分为关系型数据库和非关系型数据库

    关系型数据库

        关系型数据库就是数据与数据之间可以有关联和限制

        关系型数据库通常都是表结构,也就意味着你在用关系型数据库的时候第一步就是确定表结构

        常见的关系型数据库:MySQL,oracle,sqlite,db2,sql server等

    非关系行数据库

        通常都是以k,v键值的形式 存储数据

        常见的非关系型数据库:redis,memcache,mongodb(文档型数据库,非常接近关系型的非关系型数据)

    MySQL安装

    软件目录初识

    官网下载MySQL社区版后解压查看文件目录,bin目录下含有:

    mysqld.exe服务端

    mysql.exe客户端

    cmd启动服务端与客户端

    首先切换到bin目录下再执行命令,终端建议使用管理员身份运行,通过win+r启动的是普通用户

    启动mysqld

    启动mysql

    如果不输入用户名和密码 默认是访客模式登陆  所能用到的功能很少
    mysql -h 127.0.0.1 -P 3306 -uroot -p
    可以简写:mysql -uroot -p
    mysql在初始登陆的时候 是没有密码的 直接回车即可
    mysql中的sql语句 是以分号结束的 不敲分号 默认你没有输入完客户端还会让你继续输入,此时可输入;补全sql语句并执行
    当命令输入错误的时候  可以用c取消前面的命令  cancel
    客户端退出登录:exit 或 quit
    查看某个进程:tasklist |findstr 名称
    杀死进程:taskkill /F /PID 进程号

    环境变量配置

    将启动文件所在的路径添加到系统的环境变量中

    注意:配置完之后一段要重新启动mysql服务端及cmd终端

    此时再使用cmd启动mysql就不需要切换到bin录下了

    系统服务制作

    制作系统服务 你的cmd终端一定要是管理员身份

    mysqld --install

    制作完成即可通过services.msc启动关闭mysql服务了

    修改密码与破解管理员密码

    修改密码

    # 没有密码的情况下:
    mysqladmin -uroot -p password 123
    # 有密码的情况下:
    mysqladmin -uroot -p123 password 123456

    破解密码

    先将已经启动的服务端停掉

    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配置文件内的配置

    修改字符编码通用配置

    [mysqld]
    character-set-server=utf8
    collation-server=utf8_general_ci
     
    [client]
    default-character-set=utf8
     
    [mysql]
    user='root'
    password=123
    default-character-set=utf8

    mac系统需finder中切换到默认安装路径下/usr/local/mysql

    配置文件是my.cnf,没有ini等windows上的配置文件

    基本sql语句

    对库的操作

    #
    create database db1; 
    #
    show databases;  # 查所有 
    show create database db1;  # 查单个 
    #
    alter database db1 charset='gbk';  # 修改编码 
    #
    drop database db1;  # 删库

    对表的操作

    在创建表的时候,需要先指定库

    use dbname  # 指定库
    select database()  # 查看当前虽在的库
    #
    create table userinfo(id int,name char);
    #
    show tables;  # 查看某个库下面的所有的表
    show create table userinfo;  # 查看表的详细信息
    desc userinfo;    <==> describe userinfo;  # 查看表结构
    #
    alter table userinfo modify name char(32);
    #
    drop table userinfo;

    对记录的操作

    #
    insert into userinfo values(1,'jason',123);  # 插入单条数据
    insert into userinfo values(1,'jason',123),(2,'egon',123),(3,'tank',123);  # 插入多条数据
    #
    select * from userinfo;  # 查询所有的字段信息
    select name from userinfo;  # 查询指定字段信息
    select id,name from userinfo where id=1 or name=tank;  # 带有筛选条件的字段信息
    #
    update userinfo set name='kevin' where id=1;  # 修改数据的一个字段信息
    update userinfo set name='jason',password=666 where id=1;  # 修改数据的多个字段
    #
    delete from userinfo where id =1;  # 指定删符合条件的数据
    delete from userinfo;  # 将表中的数据全部删除

    END

  • 相关阅读:
    【codecombat】 试玩全攻略 第二章 边远地区的森林 一步错
    【codecombat】 试玩全攻略 第十八关 最后的kithman族
    【codecombat】 试玩全攻略 第二章 边远地区的森林 woodlang cubbies
    【codecombat】 试玩全攻略 第二章 边远地区的森林 羊肠小道
    【codecombat】 试玩全攻略 第十七关 混乱的梦境
    【codecombat】 试玩全攻略 第二章 边远地区的森林 林中的死亡回避
    【codecombat】 试玩全攻略 特别关:kithguard斗殴
    【codecombat】 试玩全攻略 第二章 边远地区的森林 森林保卫战
    【codecombat】 试玩全攻略 第二章 边远地区的森林
    实验3 类和对象||
  • 原文地址:https://www.cnblogs.com/renvip/p/11366487.html
Copyright © 2011-2022 走看看