How to Connect to ScyllaDB Database

The connection dialog is explained here.

How to Configure the ScyllaDB JDBC URL

DbSchema connects to ScyllaDB using its own JDBC driver which calls the native ScyllaDB driver. The DbSchema driver is open source and can be found at https://dbschema.com/jdbc-driver/ScyllaDB.html.

The default DbSchema connection dialog shows an option to connect only to a single host. To connect to multiple hosts use the 'JDBC URL' tab and edit a string like here:

jdbc:scylladb://host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[keyspace];[dataCenter][&options]]

Find the DataCenter using 'nodetool status' or 'nodetool -h ::FFFF:127.0.0.1 status'.

This will be translate an URL like jdbc:scylladb://192.168.0.1:9042/mykeyspace into:

Cluster cluster = Cluster.builder().addContactPoint("192.168.0.1").withPort(9042).build();
Session session = cluster.connect("mykeyspace");

How to configure the ScyllaDB JDBC URL and connect to the database

Connect using SSL

Edit the DbSchema.vmoptions file (in the DbSchema installation folder or ./DbSchema.app/Contents/vmoptions.txt on Mac OS) and add this parameters:
-Djavax.net.ssl.trustStore=/path/to/client.truststore
-Djavax.net.ssl.trustStorePassword=password123
# If you're using client authentication:
-Djavax.net.ssl.keyStore=/path/to/client.keystore
-Djavax.net.ssl.keyStorePassword=password123

How to Enable Remote Connections for ScyllaDB on Windows

To enable remote connections you will have to edit the cassandra.yaml file from C:\Program Files\DataStax Community\apache-cassandra\conf

How to edit ScyllaDB configuration file and allow remote connections
set the
  • start_rpc: true
  • rpc_address: your_ip
  • cdc_raw_directory: "C:/Program Files/DataStax-DDC/data/cdc_raw"
The 'cdc_raw_directory' does not exist in the default configuration file. ScyllaDB server 3.9 didn't start without adding it. Look in DataStax-DCC/logs for errors.
Setup ScyllaDB rpc_address
Go to -> Control Panel\System and Security\Administrative Tools -> Services -> Restart service. DataStax DDC Server 3.9.0 .
How to restart the DataStax service on Windows
ScyllaDB databases talk to each other using a different protocol on a different port. These two can not be the same and gives us some extra configuration. ScyllaDB Default ports:
- 9042 ScyllaDB client port.
- 9160 ScyllaDB client port (Thrift).

How to Install ScyllaDB on Windows

ScyllaDB can be installed on Windows from https://academy.datastax.com/planet-cassandra//cassandra. After installation go to installation folder: C:\Program Files\DataStax Community\apache-cassandra\conf and enable remote connections as in the previous chapter.

From Windows menu you can start DataStax Dev Center and connect to the installed ScyllaDB:
How to install ScyllaDB on Windows
To execute a command select first a connection in the top menu.

CREATE KEYSPACE sample
WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy',
'datacenter1' : 3 } AND DURABLE_WRITES = false;

CREATE TABLE sample.table1 ( id int primary key, name text);

####################

CREATE TYPE sample.flagtype (data map<text,text>,working text);

CREATE TABLE sample.table1a (abc text,
                   hello text,
                   flag frozen<flagtype>,
                   PRIMARY KEY (abc));

INSERT INTO sample.table1a JSON '{"abc":"abc", "hello":"world", "flag":{"data":{"hi":"cassandra"}, "working":"no"}}';