如果新电脑是刚安装的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

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

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

相关推荐
小白学大数据10 分钟前
JavaScript重定向对网络爬虫的影响及处理
开发语言·javascript·数据库·爬虫
time never ceases31 分钟前
使用docker方式进行Oracle数据库的物理迁移(helowin/oracle_11g)
数据库·docker·oracle
Frank牛蛙34 分钟前
1.每日SQL----2024/11/7
数据库·sql
Ciderw36 分钟前
块存储、文件存储和对象存储详细介绍
网络·数据库·nvme·对象存储·存储·块存储·文件存储
薛晓刚37 分钟前
数据库优化指南:如何将基本功能运用到极致?
数据库
stars_User40 分钟前
MySQL数据库面试题(下)
数据库·mysql
Yaml41 小时前
智能化健身房管理:Spring Boot与Vue的创新解决方案
前端·spring boot·后端·mysql·vue·健身房管理
未来之窗软件服务1 小时前
sql速度优化多条合并为一条语句
数据库
山东布谷科技官方1 小时前
布谷直播源码部署服务器关于数据库配置的详细说明
运维·服务器·数据库·直播系统源码·直播源码·直播系统搭建·直播软件开发
yanwushu1 小时前
Xserver v1.4.2发布,支持自动重载 nginx 配置
mysql·nginx·php·个人开发·composer