MariaDB or MySQL

DDL:数据定义语言
        DML:数据操纵语言

skip_name_resolve = on ;跳过域名解析;

MariaDB [(none)]> show engines;            查看支持的存储引擎;
        MariaDB [(none)]> show global variables; 获取运行中的mysql进程使用各服务器参数及其值;
        MariaDB [(none)]> SHOW CHARACTER SET;列出可用的字符集
        MariaDB [(none)]> show collation; 列出可用的字符集
        MariaDB [(none)]> select LAST_INSERT_ID(); 查看上次插入到达的数据;
        MariaDB [(none)]> select now();             显示当前系统时间;
        MariaDB [(none)]> show grants for 用户名@来源地址;
        备份数据库:
            mysqldump -u root -p mysql user > mysql-user.sql
        恢复备份数据:
            mysqldump -u root -p < /备份路径/备份文件名

查找路径:/etc/my.cnf --> /etc/mysql/my.cnf --> $MYSQL_HOME/my.cnf --> --default-extra-file=/path/to/somedir/my.cnf --> ~/.my.conf

安装方法:
    MySQL:
        rpm
        源码
安装后的设定:
    (1)为所root用户设定密码
        MariaDB [(none)]> MariaDB [mysql]> update user set password=password('password') where user='root';
        MariaDB [(none)]> flush privileges;
    (2)删除所有匿名用户
        MariaDB [(none)]>

上述两步骤可运行命令:mysql_secure_installation
    (3)建议关闭主机名反解功能;

MySQL:数据类型:
    字符型:
        CHAR,BINARY:定长数据类型;
        VARCHAR,VARBINARY:变长数据类型,需要结束符;
    数值型:
        精确数值型:
            整形:TINYINT,AMALLINT,MEDIUMINT,INT,BIGINT;
            十进制型:DECIMAL,
        近似数值型:
            浮点型:FLOAT,DOUBLE,
    日期时间型:
        DATE ‘0000-00-00’    日期;
        TIME ‘00:00:00’      时间;
        DATETIME ‘0000-00-00 00:00:00’
        YEAR(2),YEAR(4) ‘0000’          年份;
        TIMESTAMP 时间戳
    字符类型修饰符:
        NOT NULL:非空约束
        NULL:允许为空;默认值
        DEFAULT ‘STRING’:默认值
        CHARCATER SET '' :使用字符集;
        COLLATION:使用的排序规则
    日期时间修饰符:
        NOT NULL
        NULL
        DEFAULT

SQL:DDL,DML
    
        DDL:数据定义语言
            HELP  CREATE 查看帮助;
            CREATE,ALTER,DROP

DB组件:数据库、表、索引、视图、用户、存储过程、触发器、事件调度等

DML:数据操作语言
            INSERT,DELETE,UPDATE,SELECT

数据库:
                CREATE,ALTER,DROP
                    {DATABASE|SCHEMA}
                    {IF EXISTS}
                    {IF NOT EXISTS}
            表:二维关系

定义:字段名,字段数据类型,修改符
                约束:索引;应该创建在经常用作查询条件的字段上;
            创建表:
                CREATE TABLE TB;
                (1)直接创建
                (2)通过查询现存的表创建,新表会被直接插入查询而来的数据;
                (3)通过复制现存的表的表结构创建;不复制数据;

查看表结构:
                DESCRIBE tb_name;
            查看表状态信息:
                show tables;
                    MariaDB [Syslog]> show table status like 'Syslog';
            修改表:
                ALTER TABLE
            删除表:
                DROP TABLE
MySQL基础(3)

单进程多线程:
            用户连接:连接线程

MySQL数据文件类型;
            数据文件、索引文件
            重做日志、撤销日志、二进制日志、错误日志、查询日志、慢查询日志、(中继日志)

DDL & DML:

索引管理:
                    按特定数据结构存储的数据:

索引类型:
                    聚集索引、非聚集索引:数据是否与索引存储在一起;
                    主键索引、辅助索引
                    稠密索引、稀疏索引:是否索引了每一个数据项;

管理索引的途径:
            表创索引:创建表是指定; CREATE INDEX
            创建或删除索引:修改表的命令
            删除索引:DROP INDEX

视图:VIEW        CREATE VIEW ; DROP VIEW
            CREATE VIEW test AS SELECT STUID,Name,Age FROM students;

DML:
        INSERT ,DELETE,UPDATE,SELECT

INSERT:
            一次插入一行或多行数据:
            INSERT  INTO  Students (Name,Age,Gender) VALUES (‘Jinjiao King’,100,'M');
            INSERT  INTO  students SET Name='Yinjiao King',Age=98,Gender='M';
        Delete:
                DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name
                    [WHERE where_condition]
                    [ORDER BY ...]
                    [LIMIT row_count]

注意:一定要有限制条件,否则将清空表中的所有数据;
                限制条件:
                    WHERE
                    LIMIT
SELECT:
    
    start→from→where→group by→having→order by→LIMIT;

字段显示可以使用别名:
        col1 as NEWNAME
    where字句:指明过滤条件以实现选择的功能;
        过滤条件:布尔型表达式

算术操作符:+,-,*,/,%
        比较操作符:=,!=,<>,<=>,>,>=,<,<=

BETWEEN min_num AND max_mum (范围)
        IN  (element1,element2,...) (包含)
        IS NULL   (取值为空)
        IS NOT  NULL (取值不空)
        LIKE  (模糊匹配表达式)
            %:任意长度的任意字符
            _:单个字符
            RLKE:
            REGXP:匹配字符串可用正则表达式书写模式;
    逻辑操作符:

mariadb笔记的更多相关文章

  1. 《Linux就该这么学》培训笔记_ch18_使用MariaDB数据库管理系统

    <Linux就该这么学>培训笔记_ch18_使用MariaDB数据库管理系统 文章最后会post上书本的笔记照片. 文章主要内容: 初始化MariaDB服务 管理用户以及授权 创建数据库与 ...

  2. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

  3. 读书笔记--SQL必知必会--常用MySQL(MariaDB)命令

    DBMS信息 显示DBMS的版本 select version(); 显示DBMS状态 status; 显示DBMS资源状态 show status; 显示DBMS支持的权限 show privile ...

  4. Mariadb数据库设置及操作 一主多从 备份还原(实测笔记)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 数据库版本信息 : 10.1.20- ...

  5. Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...

  6. Cenos7 编译安装 Mariadb Nginx PHP Memcache ZendOpcache (实测 笔记 Centos 7.0 + Mariadb 10.0.15 + Nginx 1.6.2 + PHP 5.5.19)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...

  7. CentOS7 编译安装 Mariadb (实测 笔记 Centos 7.0 + Mariadb 10.0.15)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...

  8. mariadb数据库备份学习笔记

    备份类型: 完全备份 部分备份:仅备份其中的一张表或多张表 增量备份:仅备份从上次完全备份或增量备份之后变化的数据部分 热备份:在线备份,读写操作不受影响 温备份:在线备份,读操作可继续进行,但写操作 ...

  9. Centos7 编译安装 Nginx Mariadb Asp.net Core2 (实测 笔记 Centos 7.3 + Openssl 1.1.0h + Mariadb 10.3.7 + Nginx 1.14.0 + Asp.net. Core 2 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...

随机推荐

  1. 修改Vim内注释字体颜色

    vim /etc/vimrc   然后按大写  G 到最后一行,插入 hi comment ctermfg=6          wq保存退出 PS:默认的注释颜色是4  然后有0,1,2,3,4,5 ...

  2. P1450 [HAOI2008]硬币购物(完全背包+容斥)

    P1450 [HAOI2008]硬币购物 暴力做法:每次询问跑一遍多重背包. 考虑正解 其实每次跑多重背包都有一部分是被重复算的,浪费了大量时间 考虑先做一遍完全背包 算出$f[i]$表示买价值$i$ ...

  3. UML类图新手入门级介绍(转)

    首先,看动物矩形框,它代表一个类(Class).类图分三层,第一层显示类的名称,如果是抽象类,则就用斜体显示.第二层是类的特性,通常就是字段和属性.第三层是类的操作,通常是方法或行为.前面的符号,+ ...

  4. log4J日志框架

    log4j的配置:log4j是一个日志输出框架,就是用于输出日志的,主流框架大部分都是Log4j输出.Spring框架也可以通过Log4j输出日志 Log4j提供了强大的日志输出的自定义功能(1)通过 ...

  5. CEF JS实现获取剪贴板图片的DataURL

    转载:https://www.deanhan.cn/js-paste-upload.html 转载:https://segmentfault.com/a/1190000002915597 转载:htt ...

  6. Nilearn 小记

    4.绘制脑图像 4.1 绘图功能 当打开了太多图像而不关闭时,会出现如下问题: 每次调用绘图函数都会创建一个新图像.当在非交互式设置(例如脚本或程序)中使用时,这些图像不会显示,但会常驻于内存中并最终 ...

  7. android 百度地图 定位获取位置失败 62错误

    一切正常步骤进行但是还是没有获得定位,得到的坐标总是49E.xxxx,错误代码总是62 总是以为代码.或jar包.或还有什么权限没给.搞了好久,十分郁闷.在控制台上又没有什么具体的错误提示 经过无数次 ...

  8. IOS高级开发之多线程(四)NSOperation

    1.什么是NSOperation,NSOperationQueue? NSOperation是一个抽象的基类,表示一个独立的计算单元,可以为子类提供有用且线程安全的建立状态,优先级,依赖和取消等操作. ...

  9. Vue小项目二手书商城:(二)axios前后端数据交互

    实现内容: 写路由接口(express) axios取数据 一.写接口 1.我们要在前端取到后端的数据(之前写的data.json)可以用vue-resourse或者用axios,在vue2之后官方就 ...

  10. GIT导出差异版本更新的文件列表

    之前写了一篇SVN导出差异版本更新的文件列表 这次写git如何导出差异化版本文件列表 查找了一番,发现git diff这个命令 $ git diff 2da595c daea1d6 --name-on ...