Skip to main content
 首页 » 编程设计

couchbase之如何重命名 couchbase 中的存储桶

2024年02月02日38youxin

我的存储桶名称为 0001,当我使用以下 N1QL 语句时,出现“5000”语法错误:

cbq> Select * from 0001; 
{ 
    "requestID": "f2b70856-f80c-4c89-ab37-740e82d119b5", 
    "errors": [ 
        { 
            "code": 5000, 
            "msg": "syntax error" 
        } 
    ], 
    "status": "fatal", 
    "metrics": { 
        "elapsedTime": "349.733us", 
        "executionTime": "204.442us", 
        "resultCount": 0, 
        "resultSize": 0, 
        "errorCount": 1 
    } 
} 

我认为它需要 0001 作为数字而不是存储桶名称,有没有简单的方法来重命名它?

请您参考如下方法:

在这种情况下,您可以在 N1QL 中使用反引号来转义存储桶名称:

cbq> Select * from `0001`; 
{ 
    "requestID": "f48527e6-6035-47e7-a34f-90efe9f90d4f", 
    "signature": { 
        "*": "*" 
    }, 
    "results": [ 
        { 
            "0001": { 
                "Hello": "World" 
            } 
        } 
    ], 
    "status": "success", 
    "metrics": { 
        "elapsedTime": "2.410929ms", 
        "executionTime": "2.363788ms", 
        "resultCount": 1, 
        "resultSize": 80 
    } 
} 

目前无法重命名存储桶,您可以执行以下操作之一:

  1. 使用 cbbackup 备份存储桶。然后重新创建它并使用 cbrestore 恢复它.
  2. 创建第二个集群并使用 XDCR将数据传输到具有正确命名的存储桶的新集群。