zoukankan      html  css  js  c++  java
  • [sql]mysql指引(整理中...)-对db的分类

    参考

    db存储及分层

    一个db一个文件夹.
    一张表两个文件frm是存表结构的,ibd是存数据的
    

    连接层:
        sock
        ip
    
    sql层:
    存储层:
    

    2018年4月1日 20:53:54小结:
    时间太久,抓破脑袋斗争,想不起具体 mysql事务是干嘛的

    不怕不会,怕的是每次遇到都不会. 靠.... 遇到一次杀一次...

    建库
    建表
    查表结构
    插入数据
    
    alert修改表结构
        增加字段
        删除字段
        重命名字段
    
    事务
        transaction:
            交易;事务;
    
    

    参考

    start transaction; # 开启事务(注:开启后修改依旧显示已改动的,但是未真正的提交,可回滚)
    
    commit;  # 提交事务
    rollback; # 回滚事务,即撤销指定的sql语句(只能回退insert delete update语句),回滚到上一次commit的位置
    savepoint p1;
    rollback to p1;
    

    参考

    update: 设置值: 
        UPDATE account set balance=balance+5000 WHERE name=”xialv”;
    alert: 修改表结构
        alter table haha rename to people; # 修改表名
        alter table people change name people_name char(30); #改列名
        
        alter table people add telnum int first; # 第一列加
        alter table people add id1 int first ,add sex char(4) after name; #加字段
        alter table people drop sex; # 删一列
        
        alter table people modify name char(20); #修改字段长度
      
    
    • my.cnf读取顺序
    • 观察启动进程(数据目录)
    
    - - 授权用户(建用户/设密码): grant 库.表 --> 人@主机;
      回收权限: revoke: http://www.cnblogs.com/iiiiiher/articles/8836193.html
      查看用户权限: show grants for 'maotai'@'192.168.2.%'
    
    
    - 查看mysql版本(3种s; show states;)
    
    - 建库 建表 插入数据
    - 查看表结构(字段/及建表语句)
    - 查询某几列
    
    - 查看正在执行的sql(show processlist)
    - server/client字符集
    - 查询库的最大连接数
    - 查询库的slow log是否开
    - 查看库的大小
    
    - 库的数据目录(1dir/per库+2个文件/per表)
    
    - 查看建表语句
    show create database test;
    
    - 查看用户权限
    show grants
    
    
    - 关闭mysql
    mysqladmin shutdown
    

    数据类型: 4大数据类型
    约束
    索引

    mysql日常维护

    初始化db: 
        (5.6)mysql_install_db:
            mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql
        (5.7)mysqld:
            mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.17 --datadir=/usr/local/mysql-5.7.17/data
    
    mysqld_safe:
        启动mysql(msyql.server --> mysql_safe --> mysqld): /usr/local/mysql/bin/mysqld_safe &
        恢复密码:  /usr/local/mysql/bin/mysqld_safe --skip-grant-table &
    
    mysqladmin
        设置密码: /usr/local/mysql/bin/mysqladmin -u root password '123456';
        修改密码: mysqladmin -uroot -p123456 password 'maotai123';
                (sql语句密码函数): update mysql.user set password=PASSWORD('新密码') where User='root'; flush privileges;
    

    sql优化

    sql优化参考

    一主多从, 读写分离
    
    慢查询--explain--建索引
    

    sql学习提纲

    1.基础sql
    
    2,连表
        一对多
        多对多
            left join
            right join
            inner join
    
    3,存储过程
        mysql/pymysql
        
    4,动态执行sql
    
    5,函数
    
    6,视图,触发器,事务
    
    执行计划
    常用sql分析
    ---------------------手写sql
    
    索引
    orm框架---------------orm帮我写sql
    
    
    - pymysql
    - 插入 更新 删除
    res = excute
    res = executemany
    
    返回值: 受影响的行数
    
    
    - 查询:
    res = execute
        fetchone
        fetchmany
        fetchall
    coursor.scroll()
    
    - 思路版:
    
    建表
        虚拟表--视图(view)
    
    执行sql:
        
        连带动作--触发器(trigger)
        合并执行--事务(transection)
        存储过程&函数(procedure)
        动态执行sql
    
  • 相关阅读:
    SqlServer:此数据库处于单用户模式,导致数据库无法删除的处理
    syscolumns表中所有字段的意思
    SQL数据库之变量
    Sqlserver常用的时间函数---GETDATE、GETUTCDATE、DATENAME
    判断游标是否存在的同时检测游标状态
    向已写好的多行插入sql语句中添加字段和值
    truncate和delete之间有什么区别
    javascript实现单例模式
    关于javascript中的 执行上下文和对象变量
    了解javascript中的this --实例篇
  • 原文地址:https://www.cnblogs.com/iiiiher/p/8535279.html
Copyright © 2011-2022 走看看