Skip to content

Commit

Permalink
Better Getting Started
Browse files Browse the repository at this point in the history
  • Loading branch information
timsehn authored Nov 1, 2023
1 parent b9f17ac commit e21e898
Showing 1 changed file with 81 additions and 13 deletions.
94 changes: 81 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,38 +44,106 @@ Contribution Guide coming soon.
1. Download the latest release of `postgresql`
2. Put `postgresql` on your `PATH`
3. Navigate to a directory you want your database data stored (ie. `~/doltgresql`).
4. Run `doltgresql`. This will create a `doltgres` user and a `doltgres` database.
5. Open a new terminal. Connect with the following command: `psql -h localhost -U doltgres`. This will connect to the `doltgres` database with the `doltgres` user.
6. Create database. Create tables.
```bash
$ mkdir ~/doltgresql
$ cd ~/doltgresql
```
5. Run `doltgresql`. This will create a `doltgres` user and a `doltgres` database.
```bash
$ doltgresql
Successfully initialized dolt data repository.
Starting server with Config HP="localhost:5432"|T="28800000"|R="false"|L="info"|S="/tmp/mysql.sock"
```
6. Open a new terminal. Connect with the following command: `psql -h localhost -U doltgres`. This will connect to the `doltgres` database with the `doltgres` user.
```bash
$ psql -h 127.0.0.1 -U doltgres
psql (15.4 (Homebrew), server 15.0)
Type "help" for help.

doltgres=>
```
8. Create a `getting_started` database. Create the `getting _started` example tables.
```sql
create database getting_started;
use getting_started;
create table employees (
doltgres=> create database getting_started;
--
(0 rows)

doltgres=> \c getting_started;
psql (15.4 (Homebrew), server 15.0)
You are now connected to database "getting_started" as user "doltgres".
getting_started=> create table employees (
id int8,
last_name text,
first_name text,
primary key(id));
create table teams (
--
(0 rows)

getting_started=> create table teams (
id int8,
team_name text,
primary key(id));
create table employees_teams(
--
(0 rows)

getting_started=> create table employees_teams(
team_id int8,
employee_id int8,
primary key(team_id, employee_id),
foreign key (team_id) references teams(id),
foreign key (employee_id) references employees(id));
--
(0 rows)

getting_started=> \d
List of relations
Schema | Name | Type | Owner
--------+-----------------+-------+----------
public | employees | table | postgres
public | employees_teams | table | postgres
public | teams | table | postgres
(3 rows)
```
7. Make a Dolt Commit.
```sql
call dolt_add('teams', 'employees', 'employees_teams');
call dolt_commit('-m', 'Created initial schema');
getting_started=> select * from dolt_status;
table_name | staged | status
-----------------+--------+-----------
employees | 0 | new table
employees_teams | 0 | new table
teams | 0 | new table
(3 rows)

getting_started=> call dolt_add('teams', 'employees', 'employees_teams');
status
--------
0
(1 row)
getting_started=> select * from dolt_status;
table_name | staged | status
-----------------+--------+-----------
employees | 1 | new table
employees_teams | 1 | new table
teams | 1 | new table
(3 rows)

getting_started=> call dolt_commit('-m', 'Created initial schema');
hash
----------------------------------
peqq98e2dl5gscvfvic71e7j6ne34533
(1 row)
```
9. View the log
9. View the Dolt log.
```
select * from dolt_log;
getting_started=> select * from dolt_log;
commit_hash | committer | email | date | message
----------------------------------+-----------+--------------------+---------------------+----------------------------
peqq98e2dl5gscvfvic71e7j6ne34533 | doltgres | [email protected] | 2023-11-01 22:08:04 | Created initial schema
in7bk735qa6p6rv6i3s797jjem2pg4ru | timsehn | [email protected] | 2023-11-01 22:04:03 | Initialize data repository
(2 rows)
```
11. Continue with [Dolt Getting Started](https://docs.dolthub.com/introduction/getting-started/database#insert-some-data)
11. Continue with [Dolt Getting Started](https://docs.dolthub.com/introduction/getting-started/database#insert-some-data)
to test out more Doltgres versioning functionality.

# Building From Source

Expand Down

0 comments on commit e21e898

Please sign in to comment.