【问题标题】:Migrate mysql users to another server将mysql用户迁移到另一台服务器
【发布时间】:2012-10-24 10:19:39
【问题描述】:

我创建了一个mysqldump --all-databases 并将我的所有数据库转移到新服务器。它不起作用,因为debian-sys-maintusers 密码不匹配。所以我更改了这个用户的密码。之后,我重新启动服务器并收到此错误。

第 1 行出现错误 1577 (HY000):无法继续,因为系统表 事件调度程序使用的服务器启动时发现损坏 ERROR 1547 (HY000) 在第 1 行:mysql.proc 的列数错误。预计20, 发现 16. 表可能已损坏

我不知道这之后还会出现多少错误。所以我想只使用与我的应用程序关联的数据库创建转储 (mysqldump --databases)。

现在如何迁移用户?有什么标准方法吗?

更多信息:

New Server version: 5.1.63-0+squeeze1 (Debian)
Old Server version: 5.0.51a-24+lenny5 (Debian)

【问题讨论】:

    标签: mysql permissions migration debian mysqldump


    【解决方案1】:

    您可能需要运行mysql_upgrade,因为您的 MySql 版本不同。

    但是,作为一般规则,不要将mysql 系统架构从一台服务器复制到另一台服务器。因此,据我所知,没有将用户和用户权限从一台服务器复制到另一台服务器的“标准”方式。

    如果您真的想要/需要这样做,请尝试以下操作:

    $> mysql --silent --skip-column-names -e"show grants for user@host"
    

    以上输出GRANT 语句,您可以直接将其输入目标服务器以创建用户并给予相同的授权。

    但是,如果您的目标服务器是空的,您可以将整个数据文件夹从旧服务器移动到新服务器,然后在新服务器上运行标准 upgrade procedure from 5.0 to 5.1

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-29
      • 1970-01-01
      • 1970-01-01
      • 2014-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多