mysql rename语法错误_为什么现在MySQL无法重命名数据库?
生活随笔
收集整理的這篇文章主要介紹了
mysql rename语法错误_为什么现在MySQL无法重命名数据库?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
MySQL 之前提供了一個 rename database db_old to db_new 的命令來直接對數據庫改名,可能由于實現的功能不完備(比如,這條命令可能是一個超大的事務,或者是由于之前的表很多還是 MyISAM 等),后來的版本直接取消了這條命令。
一、mysqldump 導入導出
要說最簡單的方法,就是直接用 mysqldump 工具,在舊庫導出再往新庫導入(最原始、最慢、最容易想到)的方法:舊庫 yttdb_old 導出(包含的對象:表、視圖、觸發器、事件、存儲過程、存儲函數)
二、改整庫的表名
利用 MySQL 更改表名的方法來批量把舊庫的所有表依次遍歷,改名為新庫的表。
三、歷史方案
其實在 MySQL 早期還有一種方法。
假設 MySQL 部署好了后,所有的 binlog 都有備份,并且二進制日志格式還是 statement 的話,那就可以簡單搭建一臺從機,讓它慢慢追主機到新的庫名,等確切要更改舊庫的時候,再直接晉升從機為主機即可。
總結
其實針對 MySQL 本身改庫名,大致就這么幾種方法:如果數據量小,推薦第一種;
數據量大,則推薦第二種;
數據量巨大,那就非 MySQL 本身能解決的了。
可通過部署第三方 ETL 工具,通過解析 MySQL 二進制日志或其他的方式來把舊庫數據直接讀取到新庫達到改名的目的等等。
總結
以上是生活随笔為你收集整理的mysql rename语法错误_为什么现在MySQL无法重命名数据库?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 消息称字节跳动上海游戏工作室解散:300
- 下一篇: linux cmake编译源码,linu