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.

 

 

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Java 三目运算符细节详解「建议收藏」

    Java 三目运算符细节详解「建议收藏」Java三目运算符细节详解@author:Jingdai@date:2020.09.24看到标题你肯定觉得三目运算符有什么好讲的,不是很简单嘛。我之前也是这么认为的,直到今天刷LeetCode遇到了一点问题,发现还是有些细节自己不知道的,现总结一下。短路问题首先我们都知道Java中&&和||的运算是具有短路效果的,如果逻辑运算符的第一部分能确定运算的结果,就不会再去计算逻辑运算符的第二部分,比如下面的代码,输出的i仍然是1,因为后面的运算短路了,没有计算。in

    2022年10月30日
  • 通过pycharm安装python_JAVA开发环境

    通过pycharm安装python_JAVA开发环境Python开发环境搭建与helloWorld测试1.去官网下载然后傻瓜式安装2.下载开发IDE:这里选用pychram下载地址:pychram官网新建一个工厂后写简单的helloworld然后:找到你工程的文件,Helloworld.py最后点击OK即可看运行结果:pycha…

  • 分布式应用技术

    分布式应用技术

  • 喊山第二部_喊山主演

    喊山第二部_喊山主演原题链接喊山,是人双手围在嘴边成喇叭状,对着远方高山发出“喂—喂喂—喂喂喂……”的呼唤。呼唤声通过空气的传递,回荡于深谷之间,传送到人们耳中,发出约定俗成的“讯号”,达到声讯传递交流的目的。原来它是彝族先民用来求援呼救的“讯号”,慢慢地人们在生活实践中发现了它的实用价值,便把它作为一种交流工具世代传袭使用。(图文摘自:http://news.xrxxw.com/newsshow-8018.html)一个山头呼喊的声音可以被临近的山头同时听到。题目假设每个山头最多有两个能听到它的临近山头。给定任意一个发

  • HS数据库_hsqldb

    HS数据库_hsqldb前言在对dao层写测试类的时候,我们需要一个测试数据库,一般我们会是专门建立一个真实的测试数据库,但是有了HSQLDB事情就变得简单了起来。正题一、简介:hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议,如果你是使用Java编程的话,前言在对dao层写测试类的时候,我们需要一个测试数据库,一般我们会是专门建立一个真实的测试数据库,但是有了HSQLDB事情就变…

  • FilterDispatcher工作流程和原理「建议收藏」

    FilterDispatcher工作流程和原理「建议收藏」publicvoiddoFilter(ServletRequestreq,ServletResponseres,FilterChainchain)throwsIOException,

发表回复

您的电子邮箱地址不会被公开。

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