zoukankan      html  css  js  c++  java
  • mysql 常用命令

    database

    查看数据库 
    show databases;
    
    使用数据库 
    use test;
    
    删除数据库  
    drop database test;
    
    创建数据库
    create database  [if not exists] test; 
    
    查看当前使用的是哪个数据库
    select database();
    
    查看数据库创建命令
    show create database test;
    
    

    table

    基本表操作

    查看数据库下所有的表 
    show tables;
    
    查看表详情
    desc test;
    
    创建表 
    create table if not exists test (id int not null primary key auto_increment,name varchar(50)  default '' );
    
    0填充
    zerofill: 当插入的数值比定义的属性长度小的时候,会在数值前面进行补值操作。
    
    create table table_name (
    id bigint(20) NULL,
    order_no int(6) unsigned zerofill NULL
    );
    
    插入表
    insert into test(name) values("test");
    
    查询
    select * from test where id =1;
    
    更新
    update test set name="wang" where id = 1;
    
    删除 
    delete from test where id = 1;
    
    清空
    truncate table test;
    
    查看表详情
    desc test;
    
    表删除
    drop table test;
    

    查询

    去重查询
    select distinct name from test;
    

    字段操作

    新增字段
    alter table test add age int(11) not null default 0  comment "age";
    
    新增两个字段
    alter table test add age2 int(11),add age3 int(11);
    
    删除字段多个
    alter table test drop column age2,drop column age3;
    
    修改字段
    alter table test modify age int(8) not null default 0 comment "nianning";
    
    

    索引操作

    ALTER TABLE 表名 ADD 索引类型 (unique,primary key,fulltext,index)[索引名](字段名)
    
    索引新增
    //普通索引
    alter table test add index idx_age (age);
    //唯一索引
    alter table test add unique uni_age1(age1);
    //主键索引
    alter table test add primary key (id,name) ;
    
    
    删除索引
    drop index index_name on table_name ;
    
    alter table test drop index index_name ;
    
    alter table test drop primary key ;
    
    组合索引
    alter table  test ADD INDEX idx_name_age_age1 (name(16),age,age1); 
    
    查看索引
    show index from tb_user;
    

    调优

    explain  sql
    desc sql 
    

    用的比较少的

    查看进程
    show processlist;
    
    杀掉进程
    kill id
    
    查看版本
    select version();
    
    查看自增的步长
    select @@auto_increment_increment
     
    字段加 1 后查询返回
    select id,`id`+1 as id1  from test;
    
    

    主从

    查看master的状态 Position不应该为0

    
    mysql> show master statusG
    *************************** 1. row ***************************
                 File: mysql-bin.000003
             Position: 1168
         Binlog_Do_DB: mydb
     Binlog_Ignore_DB: 
    Executed_Gtid_Set: 
    1 row in set (0.00 sec)
    

    show processlist; state状态应该为Has sent all binlog to slave; waiting for binlog to be updated

    mysql> show processlist;
    +----+-----------------+------------------+------+-------------+------+---------------------------------------------------------------+------------------+
    | Id | User            | Host             | db   | Command     | Time | State                                                         | Info             |
    +----+-----------------+------------------+------+-------------+------+---------------------------------------------------------------+------------------+
    |  5 | mydb_slave_user | 172.22.0.4:46984 | NULL | Binlog Dump | 1236 | Master has sent all binlog to slave; waiting for more updates | NULL             |
    |  6 | mydb_slave_user | 172.22.0.3:36338 | NULL | Binlog Dump | 1234 | Master has sent all binlog to slave; waiting for more updates | NULL             |
    |  8 | root            | 172.22.0.1:59784 | mydb | Sleep       |  211 |                                                               | NULL             |
    |  9 | root            | 172.22.0.1:59796 | mydb | Sleep       |  216 |                                                               | NULL             |
    | 10 | root            | 172.22.0.1:59808 | NULL | Query       |    0 | starting                                                      | show processlist |
    +----+-----------------+------------------+------+-------------+------+---------------------------------------------------------------+------------------+
    5 rows in set (0.00 sec)
    
    1. 查看slave状态

      Slave_IO_Running 与 Slave_SQL_Running 状态都要为Yes

      mysql> show slave statusG
      *************************** 1. row ***************************
                     Slave_IO_State: Waiting for master to send event
                        Master_Host: 172.22.0.2
                        Master_User: mydb_slave_user
                        Master_Port: 3306
                      Connect_Retry: 60
                    Master_Log_File: mysql-bin.000003
                Read_Master_Log_Pos: 1168
                     Relay_Log_File: mysql-relay-bin.000002
                      Relay_Log_Pos: 888
              Relay_Master_Log_File: mysql-bin.000003
                   Slave_IO_Running: Yes
                  Slave_SQL_Running: Yes
      

      show processlist; 应该有两行state值为:
        Has read all relay log; waiting for the slave I/O thread to update it
        Waiting for master to send event

      mysql> show processlist;
      +----+-------------+------------------+------+---------+------+--------------------------------------------------------+------------------+
      | Id | User        | Host             | db   | Command | Time | State                                                  | Info             |
      +----+-------------+------------------+------+---------+------+--------------------------------------------------------+------------------+
      |  4 | system user |                  | NULL | Connect | 1692 | Waiting for master to send event                       | NULL             |
      |  5 | system user |                  | NULL | Connect |  667 | Slave has read all relay log; waiting for more updates | NULL             |
      |  8 | root        | 172.22.0.1:63012 | mydb | Sleep   |  663 |                                                        | NULL             |
      |  9 | root        | 172.22.0.1:63024 | mydb | Sleep   |  663 |                                                        | NULL             |
      | 10 | root        | 172.22.0.1:63036 | NULL | Query   |    0 | starting                                               | show processlist |
      +----+-------------+------------------+------+---------+------+--------------------------------------------------------+------------------+
      5 rows in set (0.00 sec)
      
    2. 说明:

      Slave_IO_Running:连接到主库,并读取主库的日志到本地,生成本地日志文件

      Slave_SQL_Running:读取本地日志文件,并执行日志里的SQL命令。

  • 相关阅读:
    团队冲刺第一天
    leetcode整理
    eclipse 中JSP环境搭建
    java期末小结
    桌面宠物online------------------面对对象程序综合设计2020年
    java
    4.3 jmu-Java-03面向对象-06-继承覆盖综合练习-Person、Student、Employee、Company (20分)
    选择
    算法---分支限定0/1背包--蚁群算法
    博客园特效
  • 原文地址:https://www.cnblogs.com/brady-wang/p/15116247.html
Copyright © 2011-2022 走看看