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

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

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

相关推荐
xujiangyan_1 小时前
Redis详解
数据库·redis·缓存
Y编程小白4 小时前
PostgreSQL在Linux中的部署和安装教程
数据库·postgresql
TiAmo zhang6 小时前
SQL Server 2019实验 │ 数据库和表的创建、修改与删除
数据库·oracle
闲人编程6 小时前
从多个数据源(CSV, Excel, SQL)自动整合数据
python·mysql·数据分析·csv·存储·数据源·codecapsule
disanleya7 小时前
MySQL默认密码不安全?如何首次登录并强化?
数据库·mysql·安全
花开富贵贼富贵7 小时前
MySQL 核心高级特性
运维·数据库·mysql
hello 早上好7 小时前
深入 Spring 依赖注入底层原理
数据库·sql·spring
API快乐传递者7 小时前
抓取淘宝商品详情商品数据API接口调用说明文档|获取淘宝商品价格主图数据等
数据库
济南java开发,求内推7 小时前
Redis一个服务器部署多个节点
服务器·数据库·redis
花菜会噎住7 小时前
Django视图与路由全解析:从URL到页面,一篇讲透
数据库·django·sqlite·函数