• mysql之一.初识mysql


     

    1.1数据库管理软件分类

    • 管理数据的工具有很多种,不止mysql一个。关于分类其实可以从各个纬度来进行划分,但是我们最常使用的分类还是根据他们存取数据的特点来划分的,主要分为关系型和非关系型。

    • 可以简单的理解为,关系型数据库需要有表结构非关系型数据库是key-value存储的,没有表结构

      #关系型:如 sqllite,db2,oracle,access,sql server,MySQL,注意:sql语句通用
      #非关系型:mongodb,redis,memcache

    1.2mysql

    • MySQL是一个关系型数据库管理系统 ,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

    1.3下载和安装

    mysql的安装、启动和基础配置 —— linux版本

    mysql的安装、启动和基础配置 —— mac版本

    mysql的安装、启动和基础配置 —— windows版本

    1.4 mysql的cs架构

    • mysqld install 安装数据库服务

    • net start mysql 启动数据库的server端

    • net stop mysql 停止server端

    • 客户端可以是python代码,也可以是一个程序

      • mysql.exe 是一个客户端

      • mysql -u用户名 -p密码

    1.5mysql的用户和权限

    • 在安装一个数据库后,有一个最高权限的用户root

    • mysql -h 连接ip地址,如果不写默认连接本地

    • 我们的mysql客户端不仅可以连接本地的数据库,也可以连接网络上某个数据库的server端

    • mysql>select user()

      • 查看当前用户是谁

    • mysql>set password = password('密码')

      • 设置密码

    • mysql>create user 's21'@'192.168.12.%' identified by '123';

      • 创建用户

    • mysql>show databases;

      • 查看文件夹

    • mysql>creat database day37;

      • 创建文件夹

    • mysql>grant all on day37. * to 's21'@'192.168.12.%'; #赋予day37中所有表的所有权限

      • 授权并创建用户

      • flush privileges 让权限立即生效

      • mysql>grant all on day37. * to 'alex'@'%' identified by '123';

    • mysql>show grants for 's21'@'192.168.12.%';

      • 查看当前用户有哪些权限

    1.6库,表.数据

    • 创建库,创建表 DDL(数据库定义语言)

    • 存数据,删数据,修改语言,查看 DML(数据库操纵语言)

    • grant revoke DCL(控制权限)

    1>.库操作

    • mysql>creat database 数据库名;

      • 创建库

    • mysql>show databases;

      • 查看当前有多少数据库

    • mysql>select database();

      • 查看当前使用的数据库是什么

    • mysql>use 数据库名;

      • 切换到这个数据库(文件夹)下

    • mysql>drop datatbase

      • 删库(不要轻易使用,除非逼不得已)

    2>.表操作

    • mysql>show tables;

      • 查看当前文件夹中有多少张表

    • mysql>create table student(id int,name char(4));

      • 创建表

    • mysql>drop table student;

      • 删除表格

    • mysql>desc 表名

      • 查看表字段的基础信息

    • mysql>show create table 表名

      • 能够看到和这张表相关的所有信息

    • mysql>describe 表名

    3>.操作表中的数据

    • mysql>insert into student values(1,'alex')

      • 数据的增加

    • mysql>select * from student;

      • 数据的查看

    • mysql>update 表 set 字段名 = 值

      • 修改数据

      • 例 : mysql>update student set name = 'yuan';

        • 会修改全部

      • 例 : mysql>update student set name = 'yuan' where id = 2 ;

        • 会修改要修改内容

    • mysql>delete from 表名字

      • 删除数据

    #总结:
      #SQL:结构化查询语言(Structured Query Language)
         #DDL((Data Definition Language) 数据库定义语言
         #是用于描述数据库中要存储的现实世界实体的语言。
            #创建用户
               # mysql>create user '用户名'@'%'   表示网络可以通讯的所有ip地址都可以使用这个用户名
               # mysql>create user '用户名'@'192.168.12.%'   表示192.168.12.0网段的用户可以使用这个用户名
               # mysql>create user '用户名'@'192.168.12.87'  表示只有一个ip地址可以使用这个用户名
         #创建库
            # mysql>creat database day38;
            #创建表
            # mysql>creat table 表名(字段名 数据类型(长度),字段名 数据类型(长度),)
          
        #DML(Data Manipulation Language) 数据库操纵语言
        #是SQL语言中,负责对数据库对象运行数据访问工作的指令集,以INSERT、UPDATE、DELETE三种指令为核心,分别代表插入、更新与删除,是开发以数据为中心的应用程序必定会使用到的指令,因此有很多开发人员都把加上SQL的SELECT语句的四大指令以“CRUD”来称呼。
          # mysql>insert into student values(1,'alex')  增
          # mysql>delete from 表名字                     删
          # mysql>update 表 set 字段名 = 值              改
          # mysql>select/show                           查
              #select
                # mysql>select user(); 查看当前用户
                # mysql>select database();  查看当前所在的数据库
              #show
                # mysql>show databases;   查看当前的数据库有哪些
                # mysql>show tables; 查看当前的库中有哪些表
              # mysql>desc 表名;  查看表结构
              # mysql>use 库名;   切换到这个库下
              
         #DCL(Data Control Language) 数据库控制语言
          #grant select on 库名.* to '用户名'@'ip地址/段' identified by '密码'
  • 相关阅读:
    app专项测试之稳定性测试-monkey测试
    Mac下Fiddler的安装启动。
    测试环境搭建和部署(在Linux环境下搭建jdk+Tomcat+mysql环境和项目包的部署)
    mysql如何用sql语句修改表字段?
    VMware虚拟机出现“正在使用中”如何解决?
    Opencv2.1+vs2008生成不依赖编译环境的exe文件
    VS2008在win7下不时出现Microsoft Incremental Linker已停止工作
    没有找到opencv_core231d.dll运行结果不能显示
    Mat类型与IplImage类型之间相互转换
    获取当前可执行文件的路径(绝对路径)
  • 原文地址:https://www.cnblogs.com/lilinyuan5474/p/11712240.html
Copyright © 2020-2023  润新知