zoukankan      html  css  js  c++  java
  • mysql 1

    什么是数据库(DataBase,简称DB)

       用来存储数据的仓库
       数据库可以在硬盘及内存中存储数据

      数据库服务器端: 存放数据库的主机集群
      数据库客户端: 可以连接数据库的任意客户端
      数据库管理员: DBA

    为啥使用数据库

    之前使用的是Excel来进行管理数据,

      Excel的缺点:
      1. 管理不了大量的数据 (10W量级的数据)
      2. 并发操作同一个数据表格
      3. 数据支持高级的操作, 比如:分组,连表等

    数据库的分类

    数据库管理系统(DataBase Management System 简称DBMS)

      如MySQL、Oracle、SQLite、Access、MS SQL Server。

    - 关系型数据库

      有表的概念,以表中一条条记录存储数据
      对每一列的数据类型会有约束, id(整型), name(字符串类型)
      maridb,MySQL -----》用的比较多,免费,开源,目前是甲骨文公司的产品
      SqlServer -----》 微软, 大学,政府 (汽车之家)
      Oracle -----》甲骨文,收费,金融公司,阿里
      sqlite -----》小型的文件数据库,自己玩玩 
      等

    - 非关系型数据库

      没有表的概念,通过key-value键值对方式存储数据
      memcache ----》十年前的产品 (新浪博客)
      mongodb ----》文档型数据库
      redis ------》微博

      {"name":'zekai'}
      {"name":12}
      {"name":[]}
      {"name":{}}

    两者最大区别:
      关系型数据库,把数据存在硬盘中
      非关系型数据库, 把数据存在内存中

    MySQL的框架

    流程:
    1. mysql服务端先启动,监听在某一个特定的端口(3306)
    2. mysql客户端连接服务端
    3. mysql客户端就可以发送相关的操作命令,去操作服务端存储的数据

    MySQL的安装(Windows)

    windows安装
      先去官网(https://dev.mysql.com/downloads/mysql/)
      #1、下载:MySQL Community Server 5.7.16
      http://dev.mysql.com/downloads/mysql/

      #2、解压
      如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:C:mysql-5.7.16-winx64

      #3、添加环境变量
      【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【将MySQL的bin目录路径追加到变值值中,用 ; 分割】

      #4、初始化
      mysqld --initialize-insecure ### 创建data目录, 初始化的数据

      #5、启动MySQL服务
      mysqld # 启动MySQL服务

      #6、启动MySQL客户端并连接MySQL服务
      mysql -u root -p # 连接MySQL服务器

    mysql服务端不会阻塞住

    注意:--install前,必须用mysql启动命令的绝对路径

    # 制作MySQL的Windows服务,在终端执行此命令:
    "c:mysql-5.7.16-winx64inmysqld" --install
    # 移除MySQL的Windows服务,在终端执行此命令:
    "c:mysql-5.7.16-winx64inmysqld" --remove

    注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令:
    # 启动MySQL服务
    net start mysql

    # 关闭MySQL服务
    net stop mysql

    将MySQL服务制作成windows服务

    修改mysql的密码

      C:Windowssystem32>mysqladmin -uroot -p "原密码" password "新密码"

       C:Windowssystem32>mysqladmin -uroot password "123"        设置初始密码 由于原密码为空,因此-p可以不用

      出现的错误
      C:Windowssystem32>mysql -uroot -p
      Enter password:
      ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
      如果出现上述错误,代表密码输入错误

    常用参数:(********************************)
      -u : user 用户名
      -p :password 密码
      -h :host 主机名或ip mysql -uroot -p -h 192.168.1.10
      -P : port 默认是3306 mysql -uroot -p -h 192.168.1.10 -P 3307

    忘记密码,操作方式
      #1 关闭mysqld的服务

        net stop mysql 或者taskkill -f /PID 进程号

        tasklist |findstr mysqld  查看进程号
      #2 在cmd中执行:mysqld --skip-grant-tables ===》 不用密码就可以登录,绕过密码验证的权限
      #3 在cmd中执行:mysql ===》 mysql -uroot -p 
      #4 执行如下sql指令:
      update mysql.user set authentication_string=password('') where user = 'root';
      flush privileges; (一定要操作)
      #5 tskill mysqld #或taskkill -f /PID 7832
      #6 重新启动mysql服务

    初始化MySQL

    SQL 指令

    - 操作数据库 (***************************************************************)

      create database 数据库名称 charset utf8;
      命名规范:
        可以由字母、数字、下划线、@、#、$
        区分大小写
        唯一性
        不能使用关键字如 create select
        不能单独使用数字
        最长128位

      show create database 数据库名;


      drop database 数据库名称;


      删除再添加
      如果数据库中有数据的话,直接drop会导致数据库中的数据丢失
      在线上环境,不能够直接删除数据, 在删除之前,需要进行备份

     
      show databases;

    使用数据库:
      use 数据库名;

  • 相关阅读:
    burpsuite intruder 小技巧之 自动token验证
    Burpsuite密码爆破(Basic认证)
    burpsuite intruder 小技巧之自动匹配返回值中的特征
    Idea常用快捷键
    SELECT 1,2,3...的含义及其在SQL注入中的用法
    Python break 语句
    Java 抽象类
    SQL中limit的用法
    MSF流量加密躲避检测
    sql注入中常用的语句
  • 原文地址:https://www.cnblogs.com/binyuanxiang/p/11756499.html
Copyright © 2011-2022 走看看