Dolt ships with a built in MySQL compatible server. To start the server for your Dolt database, you run
dolt sql-serverin the repository directory. The
dolt sql-servercommand starts a MySQL compatible server for the Dolt database on port 3306 with no authentication. The database name is the name of the repository directory but with dashes (
-) replaced with underscores (
dolt-testrepository name would become
dolt_testdatabase name. See this documentation for more configuration details.
Once a server is running, any MySQL client should be able to connect to Dolt SQL Server in the exact same way it connects to a standard MySQL database. We explicitly support the programmatic clients outlined in this document through integration testing. Tests are run on GitHub pull requests to Dolt in a Ubuntu environment in a Docker container. If you would like another MySQL compatible client supported and tested, please let us know.
The test code linked to below is a good way to get started connecting to a Dolt SQL server if you are not familiar how to connect to MySQL in your language of choice. The code establishes a connection, runs some simple queries, verifies the output comes back as expected, and closes the connection.
We also support the SQLAlchemy library. SQLAlchemy requires a connector that is specified in the connection string. Choose one of the supported connectors listed above, and then pass that to the SQLAlchemy connection string, as in the snippet taken from the connector test below:
conn_string_base = "mysql+mysqlconnector://"
engine = create_engine(conn_string_base +
We support the standard
We support the Java client distributed on the MySQL website called
mysql-connector-java. For our test we use the architecture independent build.
We support libmysqlclient distributed by MySQL. On OSX, we tested the client distributed by
brew install mysql-client. For the Ubuntu tests, we
apt install -y libmysqlclient-dev. We then use
pkg-configto generate the proper