Linux安装Ruby并访问数据库(失败:死于web部分)

下载Ruby

Ruby官网

wget https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.1.tar.gz

安装Ruby

编译

mv ruby-2.7.1 /usr/local
cd /usr/local/ruby-2.7.1
#prefre指定安装的目录
./configure --prefix=/usr/local/ruby

安装

make
make install

建立软链接

ln -s /usr/local/ruby/bin/ruby /usr/sbin/ruby
ruby -v

在这里插入图片描述
安装成功!

编写程序访问数据库

使用 RubyGems 安装 DBI

/usr/local/ruby/bin/gem install dbi
/usr/local/ruby/bin/gem install mysql2

建立工作空间

mkdir $HOME/ruby
cd $HOME/ruby
vim all.rb

内容如下

require 'mysql2'
 
client = Mysql2::Client.new(
    :host     => 'localhost', # 主机
    :username => 'root',      # 用户名
    :password => 'root',    # 密码
    :database => 'database',      # 数据库
    :encoding => 'utf8'       # 编码
)

results = client.query("SELECT * FROM table")
results.each do |item|
  puts "#{item['id']}   #{item['name']}"
end

ruby部署到web

参考:
安装rails

#临时添加环境变量
export PATH=${PATH}:/usr/local/ruby/bin

对上面的代码稍作修改
安装rails web框架

/usr/local/ruby/bin/gem install rails
/usr/local/ruby/bin/gem install sqlite3
/usr/local/ruby/bin/bundle install

新建web工程

#其中book是工程名
/usr/local/ruby/bin/rails new book

启动server

cd book
#启动server监听9004端口
/usr/local/ruby/bin/rails server -p9004

用浏览器访问

一些问题

make: g++: Command not found

yum install gcc-c++

Error: No such file or directory @ rb_sysopen - /root/ruby/book/config/webpacker.yml (RuntimeError)

bundle exec rails webpacker:install

Yarn not installed. Please download and install Yarn from https://yarnpkg.com/lang/en/docs/install/

安装nodejs(如果没有安装过nodejs)
curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -
yum install nodejs
安装yarn
curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
rpm --import https://dl.yarnpkg.com/rpm/pubkey.gpg
#下载源
wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
#利用yum下载
yum install yarn

注:yarn有验证,必须先curl,再利用yum安装

Error Your version of SQLite (3.7.17) is too old. Active Record supports SQLite >= 3.8

后记:做不下去了。死于这里,好像centOS7没有大于3.8的sqlite????

sqlite.rpm下载页面

sqlite下载页面

wget 下载
tar xvzf 解压
cd 进入解压后的目录
./configure --prefix=/usr/local/sqlite3  编译安装
make
make install

我下的是3.28
重新建立软链接

rm /usr/bin/sqlite3
ln -s /usr/local/sqlite3/bin/sqlite3 /usr/bin/sqlite3

export LD_LIBRARY_PATH="/usr/local/sqlite3/lib"

一开始我还以为下的是3.2,原来是两位数的版本号

猜你喜欢

转载自blog.csdn.net/LittleSeedling/article/details/105910207