Connect with Ruby
SingleStoreDB is wire-compliant with MySQL. To connect to your database with Ruby, you can use:
Standard Ruby
Ruby on Rails
Connect with Standard Ruby
For a complete example, including samples of CRUD operations, see GitHub.
Prerequisites
Ruby (version 2.6.x or 3.x)
mysql2
gem
Connection Details
To connect your Ruby application to your cluster, you'll need the following:
Host: the endpoint or IP Address of your SingleStoreDB cluster.
Port: default is
3306
User:
root
Password
Database
Here is an example of a Ruby connection for a SingleStoreDB cluster:
client = Mysql2::Client.new( :host => "localhost", :username => "root", :password => "<root password>", :database => "test" )
For more examples, see Getting started with SingleStoreDB stored procedures and Ruby.
Connect with Ruby on Rails
To connect with Ruby on Rails, configure your SingleStoreDB.
Open config/database.yml
and edit the development adapter to use MySQL. You will need to have the SingleStoreDB socket which can be found using the query show variables like 'socket'
.
$ mysql -u root -h 127.1 -P 3306 -e "show variables like 'socket'" **** +---------------+---------------------------------------------------------------------------------------+ | Variable_name | Value | +---------------+---------------------------------------------------------------------------------------+ | socket | /var/lib/memsql-ops/data/installs/MI85eaf8fca04849888be7f1a9a596210e/data/memsql.sock | +---------------+---------------------------------------------------------------------------------------+
SingleStoreDB can run queries using the mysql2
connector in controller code. Calling execute returns a mysql2
result, which can be converted to an array and easily displayed:
class WelcomeController < ApplicationController def index render plain: ActiveRecord::Base.connection.execute('show databases').to_a.join(' ') end end