zoukankan      html  css  js  c++  java
  • (2.3)学习笔记之mysql基础操作(表/库操作)

     本系列学习笔记主要讲如下几个方面;

    本文笔记【六:表操作--线上可以直接删除表吗?】

      

    附加:库操作

    【1】创建制定字符集的数据库

    需求描述:

      在创建DB的时候指定字符集.

    操作过程:

    1.使用create database语句创建数据库

    mysql> create database if not exists test03 default character set = 'utf8';
    Query OK, 1 row affected (0.00 sec)

    备注:通过default character set = 语句来指定DB的字符集.

    2.查看创建的DB的字符集

    复制代码
    show create database test;



    【2】 select schema_name,default_character_set_name from information_schema.schemata where schema_name = 'test03'; +-------------+----------------------------+ | schema_name | default_character_set_name | +-------------+----------------------------+ | test03 | utf8 | +-------------+----------------------------+ 1 row in set (0.00 sec)

    #字符集更改步骤~
    
    
    复制代码

       

     六、表操作--线上可以直接删除表吗?

       当然不可以啦~

      

      很明显表删除要经过6个步骤;

      (6.1)查看表

        【1】use database_name;  【2】show tables;

      (6.2)检查表是否被访问

        【1】show processlist;(如下图就表示有操作在使用该表,此时就就不能操作,没有被访问才可以继续下一步)

         

      (6.3)重命名表

        【1】需要绝对的占用表控制权,没有其他操作访问(一般最好是停机情况下,否则线上业务哪有不用表的,除非是备份表)

        【2】开始重命名:rename table1 to table1_bak;   

        为什么要这样?

        (1)重命名,不占原本表名称以便可以建立新表。也是为了防止线上业务起来之后再去使用该表,重命名了业务访问就会报错。  

        (2)作为一个DBA从来都不是把数据给玩死了,而是有备无患,老板和客户没有想到的,我们一定要提前想好,万一后悔了或者需要用到这部分数据了,就可以直接线上构建和使用这部分数据。

      (6.4)备份表数据

          

          把表数据备份成sql。

      (6.5)删除表

        

        确定该表不需要用到了,就可以删掉它了,避免占资源。就算后续又想要了,上面做了备份,可以用来还原~

      (6.6)查看表是否删除成功

        

      (6.7查看表结构)

        desc table_name;

        

  • 相关阅读:
    Max Sum Plus Plus HDU
    Monkey and Banana HDU
    Ignatius and the Princess IV HDU
    Extended Traffic LightOJ
    Tram POJ
    Common Subsequence HDU
    最大连续子序列 HDU
    Max Sum HDU
    畅通工程再续
    River Hopscotch POJ
  • 原文地址:https://www.cnblogs.com/gered/p/9694591.html
Copyright © 2011-2022 走看看