如果新电脑是刚安装的mysql,但是旧电脑迁移过来的文件里面有相关的rails文件,运行rake db:migrate一直报错

ruby 复制代码
$ bundle exec rake db:migrate

#运行完命令报错
rake aborted!
LoadError: libmysqlclient.so.21: cannot open shared object file: No such file or directory - /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/mysql2-0.5.5/lib/mysql2/mysql2.so
/home/meiyi/Blog/blog/config/application.rb:7:in `<top (required)>'
/home/meiyi/Blog/blog/Rakefile:4:in `require'
/home/meiyi/Blog/blog/Rakefile:4:in `<top (required)>'
/home/meiyi/.asdf/installs/ruby/2.6.9/bin/bundle:23:in `load'
/home/meiyi/.asdf/installs/ruby/2.6.9/bin/bundle:23:in `<main>'
(See full trace by running task with --trace)

在运行 bundle exec rake db:migrate 命令时遇到了一个加载错误。错误信息指出缺少名为 libmysqlclient.so.21 的共享对象文件。

使用命令:

ruby 复制代码
sudo apt-get install libmysqlclient-dev

然后再运行 rake db:migrate

ruby 复制代码
$ bundle exec rake db:migrate

#运行完命令报错
rake aborted!
ActiveRecord::NoDatabaseError: Unknown database 'blog'
/home/meiyi/.asdf/installs/ruby/2.6.9/bin/bundle:23:in `load'
/home/meiyi/.asdf/installs/ruby/2.6.9/bin/bundle:23:in `<main>'

Caused by:
Mysql2::Error: Unknown database 'blog'
/home/meiyi/.asdf/installs/ruby/2.6.9/bin/bundle:23:in `load'
/home/meiyi/.asdf/installs/ruby/2.6.9/bin/bundle:23:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)

发现说应用程序无法连接到名为 'blog' 的数据库,因为它被识别为未知数据库。

可以尝试以下步骤:

  1. 确认数据库配置:确保您的应用程序的数据库配置与实际的数据库设置匹配。在您的项目中的 config/database.yml 文件中检查数据库配置。确保数据库名称(例如 'blog')与实际的数据库名称匹配,并且数据库的其他连接参数(例如用户名、密码、主机等)正确。

  2. 创建数据库:如果数据库尚未创建,请尝试使用以下命令创建数据库:

    bundle exec rake db:create

这将使用应用程序的数据库配置在数据库服务器上创建一个新数据库。

  1. 数据库迁移:确保您的数据库迁移文件已经正确创建,并且可以在应用程序中使用。运行以下命令来运行数据库迁移:

    bundle exec rake db:migrate

这将运行所有未应用的数据库迁移,将数据库模式更新为最新版本。

运行完上面前两个个步骤就差不多可以正常运行数据库迁移了

相关推荐
一 乐1 小时前
民宿|基于java的民宿推荐系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·源码
鹏码纵横1 小时前
已解决:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 异常的正确解决方法,亲测有效!!!
java·python·mysql
美林数据Tempodata2 小时前
大模型驱动数据分析革新:美林数据智能问数解决方案破局传统 BI 痛点
数据库·人工智能·数据分析·大模型·智能问数
野槐3 小时前
node.js连接mysql写接口(一)
数据库·mysql
Zzzone6833 小时前
PostgreSQL日常维护
数据库·postgresql
chxii3 小时前
1.13使用 Node.js 操作 SQLite
数据库·sqlite·node.js
冰刀画的圈3 小时前
修改Oracle编码
数据库·oracle
这个胖子不太裤3 小时前
Django(自用)
数据库·django·sqlite
麻辣清汤4 小时前
MySQL 索引类型及其必要性与优点
数据库·mysql
2501_915374355 小时前
Neo4j 图数据库安装教程(2024最新版)—— Windows / Linux / macOS 全平台指南
数据库·windows·neo4j