(2.3)学习笔记之mysql基础操作(表/库操作)

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

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

  (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的字符集

(2.3)学习笔记之mysql基础操作(表/库操作)
show create database test;

(2.3)学习笔记之mysql基础操作(表/库操作)


【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) #字符集更改步骤~

(2.3)学习笔记之mysql基础操作(表/库操作)


(2.3)学习笔记之mysql基础操作(表/库操作)

  

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

   当然不可以啦~

  (2.3)学习笔记之mysql基础操作(表/库操作)

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

  (6.1)查看表

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

  (6.2)检查表是否被访问

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

     (2.3)学习笔记之mysql基础操作(表/库操作)

  (6.3)重命名表

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

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

    为什么要这样?

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

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

  (6.4)备份表数据

      (2.3)学习笔记之mysql基础操作(表/库操作)

      把表数据备份成sql。

  (6.5)删除表

    (2.3)学习笔记之mysql基础操作(表/库操作)

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

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

    (2.3)学习笔记之mysql基础操作(表/库操作)

  (6.7查看表结构)

    desc table_name;

    (2.3)学习笔记之mysql基础操作(表/库操作)

上一篇:数据库 使用DML语句更改数据


下一篇:大数据之Ganglia安装1