如何更改 MySQL 数据库中所有表的前缀?

2024-02-27

我的提供商安装到我的网站 Drupal CMS。现在我需要从旧站点复制所有数据。我的旧数据库中有没有前缀的表,但在新数据库中所有表都有dp_[table_name] prefix.


zerkms 解决方案对我不起作用。我必须指定information_schema数据库能够查询Tables table.

SELECT 
    CONCAT('RENAME TABLE ', GROUP_CONCAT('`', TABLE_SCHEMA, '`.`', TABLE_NAME, '` TO `', TABLE_SCHEMA, '`.`prefix_', TABLE_NAME, '`')) AS q
FROM 
    `information_schema`.`Tables` WHERE TABLE_SCHEMA='test';

Edit:

优化查询以仅调用 RENAME TABLE 一次。我遇到的问题是,连接的输出被截断为 341 个字符。这可以通过设置 MySQL 变量来解决(如果您的服务器允许)group_concat_max_len到更高的值:

SET group_concat_max_len = 3072; -- UTF8 assumes each character will take 3 bytes, so 3072/3 = 1024 characters.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何更改 MySQL 数据库中所有表的前缀? 的相关文章

  • 在“等待初始通信数据包”时失去与 MySQL 服务器的连接

    我见过许多堆栈溢出问题 一些博客尝试了解决方法 但没有任何帮助 因此重新发布问题并提供更多详细信息 我看到 MySQL 和 Python 应用程序出现奇怪的行为 详细信息如下 1 我的应用程序在 MySQL 上运行得非常好 在许多平台上进行
  • 添加新列后如何使用 activeandroid 更新表

    感谢您的阅读和帮助 我正在使用 ActiveAndroid 3 0 Android 2 2 在我的应用程序中 我有一个名为 用户 的模型 最初 我只使用 id 名称 密码 列 属性创建模型 我在模拟器上运行该应用程序 并且它有效 Table
  • 为 Microsoft SQL Server 创建统计信息时,列顺序重要吗?

    数据库引擎优化顾问建议为我们的几个查询创建一些统计信息 事实证明 其中一些是相同的 只是 CREATE STATISTICS 命令中的列顺序不同 例如 CREATE STATISTICS StatName1 ON dbo table1 co
  • 获取标签包含 GROUP_CONCAT 字段的所有文章

    我有一张桌子articles 其他tags 第三个称为article tags 我想生成一个页面 其中列出特定标签的所有文章 我的查询如下所示 SELECT headline GROUP CONCAT tags tag name AS al
  • 用于从 PHP 更新实时
  • 的 jQuery 插件
  • 有没有任何 jQuery 插件可以创建类似实时 feed 的东西推特主页 http www twitter com 使用 PHP 它从 MySQL 数据库获取数据 PHP 文件必须如何 Thanks 您确实不需要为此使用插件 您可以使用 j
  • 将我的数据库类与项目中的其他类一起使用

    我有一个自己编写的自定义数据库类 还有一个用户类和一个站点类 MySQL 类有这样的方法 connect query clean fetch 用户等级 register login logout resetPass 站点类别 updateT
  • 根据自定义数组位置排序帖子

    我想根据自定义字段列出帖子列表 这里我有 9 个帖子 有不同的 3 个位置 中 上 下 Post ID title position 1 Post1 Top 2 Post2 Bottom 3 Post3 Top 4 Post4 Bottom
  • 我们如何在存储过程中使用 mysql_affected_rows()

    我们如何使用mysql affected rows 在存储过程中 Use the ROW COUNT http dev mysql com doc refman 5 1 en information functions html funct
  • MySQL 存储映像 BLOB 不良实践性能

    我知道不建议在 SQL 中将图像存储为 BLOB 然而 在我的本地 PC 和服务器上同时工作使得在两者之间同步图像变得困难 是否还有理由不单独使用 BLOB 作为备份 这会在本地创建缓存文件 以静态方式提供服务 本质上 只有选择 BLOB
  • 获取两个表中某段时间内SUM数量的数据

    我有下面两张表 订单详细信息 OrderNumber quantityordered priceEach Orders OrderNumber orderDate 问题 orderDate 看起来像这样 2005 01 01 2005 02
  • MySQL 监听通知等效项

    是否有相当于 PostgresQL 的notify http www postgresql org docs 9 1 static sql notify html and listen http www postgresql org doc
  • 课程完成时更新外部数据库

    我的场景 Moodle 中的用户完成了一门课程 一旦发生这种情况 我想更新外部数据库 我的理解是 每次运行 cron 作业时都会触发 course completed 事件 使用一些简单值 例如已完成课程的用户名 ID 课程 ID 以及完成
  • Mysql使用tenant_id进行复合索引

    我们有一个多租户应用程序 该应用程序有一个包含 129 个字段的表 这些字段都可以在 WHERE 和 ORDER BY 子句中使用 我花了 5 天的时间试图找出最适合我们的索引策略 我获得了很多知识 但我仍然有一些问题 1 创建索引时 我应
  • 初学者 MYSQL 错误 - 访问被拒绝

    错误 1045 28000 用户 root localhost 的访问被拒绝 使用密码 N 哦 我已经尝试了一切 我已经阅读了一页又一页的答案 但似乎没有人知道正确的答案 当我尝试登录我的数据库时 我只是收到上述错误 我还没有设置密码或其他
  • “冲突可序列化”和“冲突等效”有什么区别?

    在数据库理论中 冲突可序列化 和 冲突等效 有什么区别 我的教科书有一个关于可序列化冲突的部分 但掩盖了冲突等价性 这些可能都是我熟悉的概念 但我不熟悉术语 所以我正在寻找解释 DBMS 中的冲突可以定义为两个或多个不同的事务访问同一变量
  • 如何在mySQL数据库中安全地插入代码

    我正在构建一个网站 用户可以使用 PHP 和 mySQL 数据库来存储代码片段 但我不知道如何安全地将用户输入的代码插入我的数据库 我无法使用我通常使用的 安全 功能来转换输入 trim stripslashes等 因为重点是您可以将代码视
  • 如何在codeigniter中从数据库返回最后一条记录?

    我正在尝试获取我拥有数据的最后日期 所以我想打印 date data 列中的最后一个日期 在模型中 public function last record query this gt db gt select LAST date data
  • 小写表名错误

    我正在尝试设置lower case table name价值2 因为它是 Windows 服务器 但是当我启动 MySQL Workbench 并连接到我的服务器时 出现以下错误 服务器所在的系统不能正确支持所选的lower case ta
  • 如何避免MySQL'尝试获取锁时发现死锁;尝试重新启动交易'

    我有一个innoDB表 记录在线用户 它会在用户每次刷新页面时进行更新 以跟踪他们所在的页面以及他们上次访问该网站的日期 然后我有一个每 15 分钟运行一次的 cron 来删除旧记录 我收到 尝试获取锁定时发现死锁 昨晚尝试重新启动事务大约
  • Codeigniter - 仅当数据库中不存在电子邮件时才更新电子邮件

    我为我的用户提供了一个更新页面 他们可以在其中编辑他们的姓名 电子邮件和其他信息 到目前为止 他们可以编辑一切 包括他们的电子邮件 他们可以毫无问题地输入数据库中已存在的电子邮件 我尝试添加此表单验证规则 this gt form vali

随机推荐