CockroachDB
安装完成后, 能够本地启动一个单节点服务器
或多节点集群
, 并经过内置的SQL客户端与服务器通讯. 集群能够是不安全的
或安全的
方式启动.html
CockroachDB
的最快方法(), 但在客户端和服务器之间没有验证和加密, 所以它仅限于测试和开发.加密
的客户端/服务端通讯, 须要建立证书用于客户端和服务器端的通讯.1.从包含cockroach
的目录,启动第一个节点:git
➜ cockroach git:(master) ./cockroach start --insecure build: alpha.v1-735-gbfab4ae @ 2016/03/08 05:20:06 (go1.6) admin: http://localhost:26257 sql: postgresql://root@localhost:26257?sslmode=disable logs: cockroach-data/logs store[0]: path=cockroach-data
--insecure
设置通讯模式为非安全
模式. 服务器默认在端口26257
监听客户端请求, 如要绑定到其余端口, 使用--port=<port>
参数.cockroach-data
目录. 要存储到不一样的位置, 设置--store=<filepath>
. 要使用多个存储, 但对为每个设置该编辑.CockroachDB
版本等一些有帮助的信息, 管理UI的URL, 客户端节点的SQL URL, 以及节点数据和日志的存储位置.2.对于每个集群中的节点, 重复第一步的命令, 并附加额外的标记:sql
$ ./cockroach start --insecure --store=<filepath> --port=26258 --join=localhost:26257 &
--store
参数指定一个未被其余节点使用的存储位置. 要使用多个存储, 分别为每个设置该标记详细的参数可经过 ./cockroach start --help
查看:shell
--port
标记, 指定一个未被使用的端口--join
参数加入该节点到集群. 设置该参数 localhost
和第一个节点的端口号$ ./cockroach sql --insecure # Welcome to the cockroach SQL interface. # All statements must be terminated by a semicolon. # To exit: CTRL + D. root@:26257> CREATE DATABASE bank; CREATE DATABASE root@:26257> SET DATABASE = bank; SET DATABASE root@:26257> CREATE TABLE accounts (id INT PRIMARY KEY, balance DECIMAL); CREATE TABLE root@26257> INSERT INTO accounts VALUES (1234, DECIMAL '10000'); INSERT 1 root@26257> SELECT * FROM accounts; +------+---------+ | id | balance | +------+---------+ | 1234 | 10000 | +------+---------+
http://localhost:26257
能够查看数据的管理控制台. 这在启动数据库的输出当中有提示.1.在 cockroach
二进制程序所在的目录, 建立安全证书:数据库
$ mkdir certs $ ./cockroach cert create-ca --ca-cert=certs/ca.cert --ca-key=certs/ca.key $ ./cockroach cert create-node localhost $(hostname) --ca-cert=certs/ca.cert --ca-key=certs/ca.key --cert=certs/node.cert --key=certs/node.key $ ./cockroach cert create-client root --ca-cert=certs/ca.cert --ca-key=certs/ca.key --cert=certs/root.cert --key=certs/root.key
Certificate Authority (CA)
证书和秘钥: ca.cert
和 ca.key
node.cert
和 node.key
. 这些文件用于节点之间通讯. 一般状况须要为每个节点生成单独的这些文件, 由于每一个节点都有其惟一的地址, 由于咱们在本地运行左右节点, 这里只须要生成一个节点证书和秘钥.root
用户: root.cert
和root.key
. 这些文件用于内置客户端和集群之间的安全通讯.2.启动首个节点浏览器
$ ./cockroach start --ca-cert=certs/ca.cert --cert=certs/node.cert --key=certs/node.key & build: alpha.v1-903-g51388a2 @ 2016/03/11 14:15:26 (go1.6) admin: https://ROACHs-MBP:8080 sql: postgresql://root@ROACHs-MBP:26257?sslcert=%2FUsers%2F... logs: cockroach-data/logs store[0]: path=cockroach-data
--ca-cert
, --cert
, 以及 --key
参数指向在第一个中建立的CA证书, 以及节点证书和秘钥.26257
, 默认的HTTPS端口为8080. 要绑定不一样的端口, 设置--port=<port>
和--http-port=<port>
参数.cockroach-data
目录. 要存储到其余位置, 设置--store=<filepath>
参数. 要使用多个存储设备, 对每一个设备分别设置.3.对每一个其余节点,重复步骤二, 并添加额外的参数:安全
$ ./cockroach start --store=node2-data --port=26258 --http-port=8081 --join=localhost:26257 --ca-cert=certs/ca.cert --cert=certs/node.cert --key=certs/node.key &
--store
参数指定一个未被其余节点使用的存储位置. 要使用多个存储, 分别为每个设置该标记--port
和--http-port
参数, 指定未被使用的端口--join
参数加入该节点到集群. 设置该参数 localhost
和第一个节点的端口号$ ./cockroach sql --ca-cert=certs/ca.cert --cert=certs/root.cert --key=certs/root.key # Welcome to the cockroach SQL interface. # All statements must be terminated by a semicolon. # To exit: CTRL + D.
--ca-cert
和--cert
, 以及--key
参数指向CA证书以及在第一步建立的root
用户的证书和秘钥.26257
, 要指定不一样的端口, 设置--port=<port>
参数.root@:26257> CREATE DATABASE bank; CREATE DATABASE root@:26257> SET DATABASE = bank; SET DATABASE root@:26257> CREATE TABLE accounts (id INT PRIMARY KEY, balance DECIMAL); CREATE TABLE root@26257> INSERT INTO accounts VALUES (1234, DECIMAL '10000'); INSERT 1 root@26257> SELECT * FROM accounts; +------+---------+ | id | balance | +------+---------+ | 1234 | 10000 | +------+---------+
5.浏览器指向 http://localhost:8080
能够查看数据的管理控制台. 这在启动数据库的输出当中有提示.post