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

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

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

相关推荐
Java探秘者2 小时前
Maven下载、安装与环境配置详解:从零开始搭建高效Java开发环境
java·开发语言·数据库·spring boot·spring cloud·maven·idea
2301_786964363 小时前
3、练习常用的HBase Shell命令+HBase 常用的Java API 及应用实例
java·大数据·数据库·分布式·hbase
苹果醋33 小时前
大模型实战--FastChat一行代码实现部署和各个组件详解
java·运维·spring boot·mysql·nginx
阿维的博客日记3 小时前
图文并茂解释水平分表,垂直分表,水平分库,垂直分库
数据库·分库分表
wrx繁星点点4 小时前
事务的四大特性(ACID)
java·开发语言·数据库
小小娥子5 小时前
Redis的基础认识与在ubuntu上的安装教程
java·数据库·redis·缓存
DieSnowK5 小时前
[Redis][集群][下]详细讲解
数据库·redis·分布式·缓存·集群·高可用·新手向
计算机学姐5 小时前
基于SpringBoot+Vue的高校运动会管理系统
java·vue.js·spring boot·后端·mysql·intellij-idea·mybatis
-XWB-6 小时前
【MySQL】数据目录迁移
数据库·mysql
老华带你飞6 小时前
公寓管理系统|SprinBoot+vue夕阳红公寓管理系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·spring boot·课程设计