go - 如何使用 gocql 在 cassandra 中创建键空间

标签 go cassandra gocql

有没有办法使用 gocql 在 cassandra 中创建新的键空间?

最佳答案

我认为库中没有任何特定命令,但他们通过使用 CREATE KEYSPACE 命令发出正常查询来创建键空间作为测试的一部分(复制如下) - https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlCreateKeyspace.html

func createKeyspace(tb testing.TB, cluster *ClusterConfig, keyspace string) {
    c := *cluster
    c.Keyspace = "system"
    c.Timeout = 20 * time.Second
    session, err := c.CreateSession()
    if err != nil {
        tb.Fatal("createSession:", err)
    }

    err = session.control.query(`DROP KEYSPACE IF EXISTS ` + keyspace).Close()
    if err != nil {
        tb.Fatal(err)
    }

    err = session.control.query(fmt.Sprintf(`CREATE KEYSPACE %s
    WITH replication = {
        'class' : 'SimpleStrategy',
        'replication_factor' : %d
    }`, keyspace, *flagRF)).Close()

    if err != nil {
        tb.Fatal(err)
    }
}

请参阅此处的问题并链接到测试中的源代码 - https://github.com/gocql/gocql/issues/566

关于go - 如何使用 gocql 在 cassandra 中创建键空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49244479/

相关文章:

html - 无法通过马提尼框架访问静态网页 index.html

go - 将具有嵌入式接口(interface)的结构转换为 JSON

cassandra - Cassandra 如何处理 datastax java 驱动程序中的阻塞执行语句

docker - 如何在Docker Compose多容器应用程序中使用GoCQL连接到bitnami/cassandra?

go - 使用 gocql 驱动程序在 Cassandra 中存储 byte slice

cassandra - 应用程序容器到 cassandra 节点 - 一对一还是?

debugging - 使用VS Code进行调试不起作用。没有变量,调用堆栈等

go - 将 map 初始化为 Go 结构中的字段

ruby - 选择数据库技术

python - 酸洗错误运行 COPY 命令 : CQLShell on Windows