我已经在本地从MySQL工作台导出了我的数据库,我只是尝试在我的实时服务器上运行它,所有的东西都成功地插入了。
当有一个特殊字符时,一些字段就会被截断,因此'This is a £ test'变成了'This is a '。
但是,我假设这是一个编码问题,但是local上的数据库都有UTF8_unicode_CI作为排序规则。
例如,假设您在主程序和已设置的复制-do-db= A的从属程序上有表A和表B。
如果我做这样的事
USE B;
DROP TABLE A.sometable;
为什么这不起作用?我知道为什么它不能工作,因为我使用了一个数据库,然后对另一个数据库进行操作,但是为什么MySQL是这样实现的呢?
这是一个有意识的决定,还是有什么更大的理由不能让它发挥作用?
这可能是一个愚蠢的问题,但如果我最近通过cat dump.mysql \ mysql dbname将一个完整的mysql转储还原到一个新的mysql实例中以便于迁移;我希望恢复包含自该完全转储以来的最新数据的最后一个增量转储,我是否可以以同样的方式将该转储导入到我的数据库中,并且它只会在不覆盖其他数据的情况下将其添加到数据库中(除非在这种情况下数据被修改了,它应该重写)?
我正在编写一个进程,从我们的夜间数据库快照中提取一个新实例,并且我想观察它的进展,并在数据库打开后执行一些操作。当mysql第一次出现时,它会花一些时间在恢复上,我想知道它什么时候完成,最好是完成了多长时间。
Linux "service“声称mysql处于”启动/运行“状态,因此这是没有帮助的。我可以尝试连接,直到连接成功,但如果在恢复过程中出现问题,我可能会永远挂起。到目前为止,我所能做的最接近的是跟踪MySQL的error.log,然后使用regex从最后一行中提取最后一个数字,以确定恢复进度。但这似乎有点脆弱和烦躁。
是否有MySQL (或第三方)提供的任何类型的工具可以确定M