• MySQL:基本概念和基础操作


    MySQL

    1. 基本概念

    文件存储不安全、不便于管理查询、不便于程序访问。

    数据库是程序和磁盘之间的软件层,帮助用户进行数据管理。数据库实际上是网络服务,通过客户端访问后台的数据库。

    mysql -h 127.0.0.1 -P 3306 -u root -p123456
    
    • 1

    数据库实际上数据库管理程序, 一般一个应用创建一个数据库,一般一个库中有多个表。

    在这里插入图片描述

    MySQL是关系型数据库,数据存储是按行列存储的。通常把一行称为记录,一列称为属性。

    在这里插入图片描述

    最底层是磁盘硬件,往上是存储引擎,存储引擎是系统文件的封装,帮助我们进行文件操作。其上还有分析器,对SQL语句分析翻译成文件操作。

    show engines \G;
    
    • 1

    2. 基础操作

    2.1 库的操作

    #1.
    create database db_name;
    #2. 
    create database [if not exists] db_name [create_specification [, create_specification] ...]
    create_specification:
    	[default] character set charset_name # 指定数据库采用的字符集
        [default] collate set collation_name # 指定数据库字符集的校验规则
        
    create database if not exists `test1` charset=utf8;
    create database if not exists `test1` character set utf8;
    
    #数据的存储规则是`utf8`,数据的校验规则就应是`utf8_general_ci`。
    #校验规则表示如何看待数据库中的数据,二者应该对应。
    
    show variables like 'character_set_database';
    show variables like 'collation_database';
    
    # 显示数据库
    show datbases;
    # 显示创建语句
    show create database `db_name`;
    # 删除数据库
    drop database `db_name`;
    # 查看连接情况
    show processlist;
    # 备份数据库
    mysqldump -P`port` -u `user` -p `passwd` -B `db_name` > `backup_file_path`
    # 还原数据库
    mysql> source `backup_file_path`
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29

    2.2 表的操作

    # 创建表
    create table `tb_name` { 
    	field1 datatype, # field表示列名,datatype表示列的类型
        field1 datatype,
    	field1 datatype
    } [character set 字符集 collate 校验规则 engine 存储引擎];
    
    # 查看表
    desc `tb_name`;
    
    # 添加列
    alter table `tb_name` add  ( field1 datatype [, field2 datatype ...] )
    # 删除列
    alter table `tb_name` drop ( field1 datatype [, field2 datatype ...] )
    # 修改列
    alter table `tb_name` modify ( field1 datatype [, field2 datatype ...] )
    # 更改表名称
    alter table `tb_name_old` rename to `tb_name_new`; 
    # 更改列名称
    alter table `tb_name` change `field_name_old` `field_name_new` datatype;
    # 删除表
    drop table `tb_name`;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
  • 相关阅读:
    [网鼎杯 2020 朱雀组]phpweb-1|反序列化
    mac m1关闭sip系统完整性保护csrutil disable,如何禁用mac m1的系统完整性保护
    【JavaWeb】-- Servlet优化(dispatcherServlet)
    CPU乘法运算-不再迷惑
    十二张图:从0开始理解对称/非对称加密、CA认证、以及K8S各组件颁发证书原由
    详解 http 鉴权
    分布式事务Seata
    Python爬虫之Scrapy框架(CrawlSpider的简单使用)
    【JVM】垃圾回收:判断可回收对象
    JAVA麦克风实时录音调用听写并存储音频到本地
  • 原文地址:https://blog.csdn.net/yourfriendyo/article/details/126575119