以同樣的方式SHOW CREATE TABLE tblname;帶回之前執行的內容,是否有查看ALTER TABLE查詢的SQL? 請幫忙?任何方式來執行後查看ALTER TABLE? -MySQL
6
A
回答
1
如果您的MySQL實例已打開日誌記錄,則可以查看日誌。這將是最好的選擇。
如果您的系統已打開歷史記錄,則可以從同一系統啓動客戶端備份並嘗試向上箭頭。您可能能夠在那裏看到該命令。
如果您知道運行該命令的用戶,並且他們碰巧直接從命令行運行該命令,則可能會使用相同的歷史記錄技巧。
4
一個小小的澄清:show create table
實際上並沒有「帶回之前執行的內容」。它只是向您顯示將從頭開始創建表的DDL。該表可能已經創建,然後多次更改,但show create table
反映了表的當前狀態。
至於查找最近在桌面上運行的任何alter table
語句,最好的選擇是二進制日誌。
首先檢查,看是否二進制啓用了日誌記錄:
show variable like 'log_bin';
如果是,找到二進制日誌相關的時間段,用mysqlbinlog可以將其轉換爲SQL,然後用grep爲相關表名稱找到您正在尋找的alter table
聲明。
1
工具:
- Maatkit。
- 紅門的MySQL的架構&數據比較
- 蟾蜍
- SQLyog的
- MySQL的DIFF
手冊:看到
首先檢查是否二進制啓用了日誌記錄:
show variable like 'log_bin';
然後,
mysqlbinlog /var/log/mysql/mysql-bin.000001 | grep 'alter table *tablename*' > test.file
轉到TEST.FILE看到的ALTER語句。
相關問題
- 1. Mysql - alter table
- 2. mysql alter table FOREIGN KEY!
- 3. ALTER TABLE MySQL錯誤
- 4. 在alter table之後的MySQL回調
- 5. 添加DATETIME列的Alter Table語法看起來如何?
- 6. 如何正常運行ALTER TABLE之後ALTER VIEW
- 7. Rails和mysql。任何方式來查看錶?
- 8. 在執行ALTER TABLE時MySQL中的錯誤1005
- 9. MySQL工作臺alter table
- 10. alter table mysql offline or not?
- 11. MySQL掛在ALTER TABLE上
- 12. MySQL ALTER TABLE AUTO_INCREMENT和ORDER BY
- 13. 正確的MySQL代碼alter table來臥式
- 14. alter table來添加外鍵
- 15. ALTER TABLE錯誤
- 16. RENAME TABLE/ALTER TABLE不工作
- 17. 在一個執行多個laravel alter table遷移查詢?
- 18. MySQL - 如何在ALTER TABLE中使用CONCAT?
- 19. 生產數據庫上的MySql ALTER TABLE - 任何問題?
- 20. ALTER TABLE add constraint
- 21. MYSQL執行alter語句後自動增量重置(mysql 5.0.92)
- 22. 我該如何防止像ALTER TABLE ....這樣的查詢的反覆執行?
- 23. 任何方式執行static_cast之後的類型安全檢查?
- 24. JDBI ALTER TABLE DROP PARTITION
- 25. 有更快的方式來執行此mysql查詢嗎?
- 26. Table not Alter
- 27. ALTER TABLE語法
- 28. Oracle alter table references
- 29. 是ALTER TABLE
- 30. sqlite的:ALTER TABLE
http://dev.mysql.com/doc/refman/5.0/en/server-logs.html是MySQL管理日誌記錄描述的鏈接。 – TheJacobTaylor 2010-02-24 18:52:00
謝謝你回覆,我使用phpmyadmin,但我似乎無法找到任何歷史或日誌選項。 – 2010-02-24 19:05:32
如果您需要這些數據,您可以要求系統的管理員爲您查詢查詢日誌嗎?讓他們在特定的日子用「alter」找到用戶的命令。希望他們能夠提供幫助。 – TheJacobTaylor 2010-02-24 23:02:41