mysql修改表名和库名

mysql修改表名和库名改变表名mysql>ALTER  TABLE  `原表名`  RENAME  TO  `新表名`;改库名可以把原库倒出来然后恢复到新库里showvariableslike’table_type’;+—————+——–+ |Variable_name|Value | +—————+——-

大家好,又见面了,我是你们的朋友全栈君。

改变表名
mysql> ALTER   TABLE   `原表名`   RENAME   TO   `新表名`;

改库名
可以把原库倒出来然后恢复到新库里
show variables like ‘table_type’;
+—————+——–+
 | Variable_name | Value  |
 +—————+——–+
 | table_type    | MyISAM |
+—————+——–+
 1 row in set (0.00 sec)
如果是MyISAM的话,只要修改DATA目录下面的那个库名的文件夹的名字就OK了。
找数据的路径:
show variables like ‘data%’;
 +—————+—————–+
 | Variable_name | Value           |
 +—————+—————–+
 | datadir       | /var/lib/mysql/ |
+—————+—————–+
 1 row in set (0.00 sec)

    如果是INNODB的话,其实是无法修改库名的.
一种方法是比较保守的,直接把老库的内容mysqldump到新库里面。
    还有一种类似上面方法,先把表的存储引擎修改为MyISAM,然后再改库目录的名字,最后再把表的存储引擎改为INNODB。
   其实还有最后一种方法,如下,最后一种方法还是比较好些,速度也很快。

假设源库名是’ceshi1’,目标库名是’ceshi2’
    首先创建目标库
    create database ceshi1;
    获取所有源库的表名
    use information_schema;
    select table_name from TABLES where TABLE_SCHEMA=ceshi1;
    然后按照以下命令一个个修改
    rename table ceshi1.[tablename] to ceshi1.[tablename];
    一个个执行下来之后表就转到新的库里面了.

手册摘录:
This statement was added in MySQL 5.1.7 but was found to be dangerous and was removed in MySQL 5.1.23. It was intended to enable upgrading pre-5.1 databases to use the encoding implemented in 5.1 for mapping database names to database directory names (see Section 8.2.3, “Mapping of Identifiers to File Names”). However, use of this statement could result in loss of database contents, which is why it was removed. Do not use RENAME DATABASE in earlier versions in which it is present.

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139744.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mbus接口电路_数据总线

    mbus接口电路_数据总线本文来自我的163博客搬移春节放假前到现在,设计了一款采集器,采集器的设计按照标准的MBUS协议设计,设计容量为最大可同时对100只水表的水量数据进行采集。硬件设计:原理图设计上采用自顶向下的分层电路图设计方法,分为5个电路子图,分别为单片机小系统部分、电源部分、MBUS协议部分、短路保护部分、通信部分。1、单片机小系统部分的设计上将编程引脚的时钟和…

    2022年10月16日
    0
  • Java高级面试题!69个经典Java面试题和答案详解

    Java高级面试题!69个经典Java面试题和答案详解拼多多一面首先自我介绍参加过哪些项目并发编程三要素?实现可见性的方法有哪些?多线程的价值?创建线程的三种方式的对比?画出线程的状态流转图常用的并发工具类有哪些?CyclicBarrier和CountDownLatch的区别CAS的问题:1、CAS容易造成ABA问题2、不能保证代码块的原子性3、CAS造成CPU利用率增加ReadWriteLock是什么一面面试题答案:拼多多二面自我介绍什么是工厂模式?如何实现单链表的增删操作?让我说意思JVM的分为哪几块

    2022年8月21日
    3
  • 机器学习之K-近邻算法

    1.橙子还是柚子该例子来自于《算法图解》,看下图中的水果是橙子还是柚子?我的思维过程类似于这样:我脑子里面有个图表图中左下的表示橙子,右上的表示柚子,取橙子和柚子的两个特征(大和红),一般而言

    2021年12月30日
    40
  • 从0开始学python_python37从零开始学

    从0开始学python_python37从零开始学如何用python进行期货程序化交易、程序化交易系统目前主要是通过计算机程序实现的,其实就是把交易者决策的过程用计算机语言描述出来,然后由计算机给出交易建议或直接发送交易指令到期货公司的。SDYGDFHFGJFGFTYKGHKTY你就是想找个软件或者券商的接口去上传交易指令,你前期的数据抓取和分析可能python都写好了,所以差这交易指令接口最后一步。对于股票的散户,正规的法子是华宝。国内量化交易…

    2022年10月8日
    1
  • angular指令笔记(一):ng-options

    angular指令笔记(一):ng-options

    2022年3月7日
    28
  • pytest skipif_白盒测试用例

    pytest skipif_白盒测试用例前言pytest.mark.skip可以标记无法在某些平台上运行的测试功能,或者您希望失败的测试功能Skip和xfail:处理那些不会成功的测试用例你可以对那些在某些特定平台上不能运行的测试用

    2022年7月28日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号