Important
New database features are no longer connected to engine versions; features are now enabled independently during scheduled update windows, and “major” and “minor” releases no longer exist in Helios. Please visit the release notes to view the latest features available in your database clusters.
Connect with Ruby
On this page
SingleStore is wire-compliant with MySQL.
-
Standard Ruby
-
Ruby on Rails
Connect with Standard Ruby
For a complete example, including samples of CRUD operations, refer to Getting started with SingleStore and Ruby GitHub repository.
Prerequisites
-
Ruby (version 2.
6. x or 3. x) -
mysql2gem
Connection Details
To connect your Ruby application to your cluster, you'll need the following:
-
Host: Endpoint or IP Address of your SingleStore Helios cluster.
Refer to SingleStore Helios Endpoints to determine the endpoint (
host:port) of your deployment. -
Port: Default is
3306 -
User: Username of the SingleStore database user with which to connect.
-
Password: Password for the SingleStore database user .
-
Database: Name of the SingleStore database to connect with.
Here is an example of a Ruby connection for a SingleStore Helios cluster:
client = Mysql2::Client.new(:host => "svc-1234ebc1-ab6f-123d-8e67-cd5d066ca0e8-ddl.aws-region-1.svc.singlestore.com",:username => "admin",:password => "<admin password>",:database => "test")
For more examples, refer to Getting started with SingleStore stored procedures and Ruby.
Connect with Ruby on Rails
To connect with Ruby on Rails, configure your SingleStore Helios.
Open config/database. and edit the development adapter to use SingleStore.SHOW VARIABLES LIKE 'socket'.
singlestore -u 's2user' -p -h 'svchost-xxxx' -P 3306 -e "SHOW VARIABLES LIKE 'socket'"
+---------------+---------------------------------------+
| Variable_name | Value |
+---------------+---------------------------------------+
| socket | /var/lib/memsql/xxxx/data/memsql.sock |
+---------------+---------------------------------------+SingleStore can run queries using the mysql2 connector in controller code.mysql2 result, which can be converted to an array and easily displayed:
class WelcomeController < ApplicationControllerdef indexrender plain: ActiveRecord::Base.connection.execute('show databases').to_a.join(' ')endend
Last modified: