mirror of
https://github.com/Qortal/qortal.git
synced 2025-03-26 23:44:34 +00:00
Updated build instructions in README.md and moved database info to DATABASE.md
This commit is contained in:
parent
5dec4fd8a1
commit
d2d2956c8a
34
DATABASE.md
Normal file
34
DATABASE.md
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
# Database
|
||||||
|
|
||||||
|
You can examine your node's database using [HSQLDB's "sqltool"](http://www.hsqldb.org/doc/2.0/util-guide/sqltool-chapt.html).
|
||||||
|
It's a good idea to install "rlwrap" (ReadLine wrapper) too as sqltool doesn't support command history/editing.
|
||||||
|
|
||||||
|
Typical command line for sqltool would be:
|
||||||
|
`rlwrap java -cp ${HSQLDB_JAR}:${SQLTOOL_JAR} org.hsqldb.cmdline.SqlTool --rcFile=${SQLTOOL_RC} qora`
|
||||||
|
|
||||||
|
`${HSQLDB_JAR}` should be set with pathname where Maven downloaded hsqldb,
|
||||||
|
typically `${HOME}/.m2/repository/org/hsqldb/hsqldb/2.5.0/hsqldb-2.5.0.jar`
|
||||||
|
|
||||||
|
`${SQLTOOL_JAR}` should be set with pathname where Maven downloaded sqltool,
|
||||||
|
typically `${HOME}/.m2/repository/org/hsqldb/sqltool/2.5.0/sqltool-2.5.0.jar`
|
||||||
|
|
||||||
|
`${SQLTOOL_RC}` should be set with pathname of a text file describing HSQLDB databases,
|
||||||
|
e.g. `${HOME}/.sqltool.rc`, with contents like:
|
||||||
|
|
||||||
|
```
|
||||||
|
urlid qortal
|
||||||
|
url jdbc:hsqldb:file:db/blockchain
|
||||||
|
username SA
|
||||||
|
password
|
||||||
|
```
|
||||||
|
Above `url` component `file:db/blockchain` assumes you will call `sqltool` from directory containing `db/`.
|
||||||
|
|
||||||
|
Another idea is to assign a shell alias in your `.bashrc` like:
|
||||||
|
```
|
||||||
|
export HSQLDB_JAR=${HOME}/.m2/repository/org/hsqldb/hsqldb/2.5.0/hsqldb-2.5.0.jar
|
||||||
|
export SQLTOOL_JAR=${HOME}/.m2/repository/org/hsqldb/sqltool/2.5.0/sqltool-2.5.0.jar
|
||||||
|
alias sqltool='rlwrap java -cp ${HSQLDB_JAR}:${SQLTOOL_JAR} org.hsqldb.cmdline.SqlTool --rcFile=${SQLTOOL_RC}'
|
||||||
|
```
|
||||||
|
So you can simply type: `sqltool qortal`
|
||||||
|
|
||||||
|
Don't forget to use `SHUTDOWN;` before exiting sqltool so that database files are closed cleanly.
|
62
README.md
62
README.md
@ -1,58 +1,10 @@
|
|||||||
# ((Qora2)) - Qortal Project - Official Repo
|
# ((Qora2)) - Qortal Project - Official Repo
|
||||||
|
|
||||||
To use:
|
## Build / run
|
||||||
|
|
||||||
- Use maven to fetch dependencies.
|
- Requires Java 11
|
||||||
- Build project.
|
- Use Maven to fetch dependencies and build: `mvn clean package`
|
||||||
- Build v1feeder.jar as a fatjar using src/v1feeder.java as the main class
|
- Built JAR should be something like `target/qortal-1.0.jar`
|
||||||
- Fire up an old-gen Qora node.
|
- Create basic *settings.json* file: `echo '{}' > settings.json`
|
||||||
- Use ```v1feeder.jar``` to migrate old Qora blocks to DB:
|
- Run JAR in same working directory as *settings.json*: `java -jar target/qortal-1.0.jar`
|
||||||
|
- Wrap in shell script, add JVM flags, redirection, backgrounding, etc. as necessary.
|
||||||
```java -jar v1feeder.jar qora-v1-node-ip```
|
|
||||||
|
|
||||||
You should now be able to run all the JUnit tests.
|
|
||||||
|
|
||||||
You can also examine the migrated database using
|
|
||||||
[HSQLDB's "sqltool"](http://www.hsqldb.org/doc/2.0/util-guide/sqltool-chapt.html).
|
|
||||||
|
|
||||||
It's a good idea to install "rlwrap" (ReadLine wrapper) too as sqltool doesn't
|
|
||||||
support command history/editing!
|
|
||||||
|
|
||||||
Typical command line for sqltool would be:
|
|
||||||
```
|
|
||||||
rlwrap java -cp ${HSQLDB_JAR}:${SQLTOOL_JAR} org.hsqldb.cmdline.SqlTool --rcFile=${SQLTOOL_RC} qora
|
|
||||||
```
|
|
||||||
|
|
||||||
```${HSQLDB_JAR}``` contains pathname to where Maven downloaded hsqldb,
|
|
||||||
typically ```${HOME}/.m2/repository/org/hsqldb/hsqldb/2.4.0/hsqldb-2.4.0.jar```,
|
|
||||||
but for now ```lib/org/hsqldb/hsqldb/r5836/hsqldb-r5836.jar```
|
|
||||||
|
|
||||||
```${SQLTOOL_JAR}``` contains pathname to where Maven downloaded sqltool,
|
|
||||||
typically ```${HOME}/.m2/repository/org/hsqldb/sqltool/2.4.1/sqltool-2.4.1.jar```
|
|
||||||
|
|
||||||
```${SQLTOOL_RC}``` contains pathname to a text file describing Qora2 database,
|
|
||||||
e.g. ```${HOME}/.sqltool.rc```, with contents like:
|
|
||||||
|
|
||||||
```
|
|
||||||
urlid qora
|
|
||||||
url jdbc:hsqldb:file:db/qora
|
|
||||||
username SA
|
|
||||||
password
|
|
||||||
|
|
||||||
urlid qora-test
|
|
||||||
url jdbc:hsqldb:file:db/test
|
|
||||||
username SA
|
|
||||||
password
|
|
||||||
```
|
|
||||||
|
|
||||||
You could change the line ```url jdbc:hsqldb:file:db/test``` to use a full pathname for easier use.
|
|
||||||
|
|
||||||
Another idea is to assign a shell alias in your ```.bashrc``` like:
|
|
||||||
```
|
|
||||||
export HSQLDB_JAR=${HOME}/.m2/repository/org/hsqldb/hsqldb/2.4.0/hsqldb-2.4.0.jar
|
|
||||||
export SQLTOOL_JAR=${HOME}/.m2/repository/org/hsqldb/sqltool/2.4.1/sqltool-2.4.1.jar
|
|
||||||
alias sqltool='rlwrap java -cp ${HSQLDB_JAR}:${SQLTOOL_JAR} org.hsqldb.cmdline.SqlTool --rcFile=${SQLTOOL_RC}'
|
|
||||||
```
|
|
||||||
So you can simply type: ```sqltool qora-test```
|
|
||||||
|
|
||||||
Don't forget to use ```SHUTDOWN;``` before exiting sqltool so that database files are closed cleanly.
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user