【问题标题】:Migrating from MySQL to MariaDB on Ubuntu 20.04在 Ubuntu 20.04 上从 MySQL 迁移到 MariaDB
【发布时间】:2021-01-17 02:50:35
【问题描述】:

我正在尝试在 Ubuntu 20.04 LTS 上迁移到 MariaDB 10.5.8。

问题:
具体来说,我无法将我的 mysqldbdummp.sql 文件导入新的 Mariadb。

我的步骤
1.) 首先,我将所有数据库转储到一个 .sql 文件中 mysqldump -u root -p --all-databases > all_dbs.sql
2.) 然后,我从 ubuntu 中删除了 mysql 服务器 sudo apt purge mysql-server
3.)从这里,我安装了mariadb:
sudo apt update && sudo apt upgrade
sudo apt -y install software-properties-common
sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
sudo add-apt-repository 'deb [arch=amd64] http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal main'
sudo apt update
sudo apt install mariadb-server mariadb-client#我愚蠢地回答“不”,因为它告诉我这样做是安全的......
4.) 我尝试使用 mysql -u root -p < all_dbs.sql 导入我的 dbdumpfile.sql,但遇到了这个错误 'ERROR 1698 (28000): Access denied for user 'root'@'localhost',所以我使用 these instructions 来解决这个问题
5.) 当然,这导致了一个新问题:Unknown collation: 'utf8mb4_0900_ai_ci' #1902,我用sed -i all_dbs.sql -e 's/utf8mb4_0900_ai_ci/utf8mb4_unicode_ci/g'解决了这个问题
6.)而且-现在-当我运行mysql -u root -p < all_dbs.sql时,它会输出
ERROR 1005 (HY000) at line 87: Can't create table mysql.db (errno: 168 "Unknown (generic) error from engine")

有什么建议吗?

【问题讨论】:

    标签: mysql linux ubuntu mariadb


    【解决方案1】:

    从您的all_dbs.sql 文件中删除mysql 数据库及其所有表插入。 MariaDB-10.4+ 不会将其 mysql 表映射到您从中导入的 MySQL-8.0。

    您需要查看show create user {user}@{host}show grants for {user}@{host} 来迁移系统用户。

    【讨论】:

    • 感谢您的跟进。您能否提供一些具体的步骤来实现您所说的,非常感谢
    猜你喜欢
    • 2011-11-25
    • 1970-01-01
    • 2019-02-15
    • 2019-09-10
    • 1970-01-01
    • 2020-06-13
    • 2012-01-03
    • 2017-01-18
    • 1970-01-01
    相关资源
    最近更新 更多