Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
134 changes: 28 additions & 106 deletions docs/cn/guides/20-self-hosted/01-quickstart/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,11 @@
title: 快速入门
---

Databend 快速入门:5 分钟体验 Databend
本指南将帮助您快速设置 Databend,连接到它,并执行基本的数据导入。
5 分钟内在本地启动 Databend。

## 1. 使用 Docker 启动 Databend
运行以下命令在容器中启动 Databend:
## 1. 启动 Databend

```
```shell
docker run -d \
--name databend \
--network host \
Expand All @@ -19,124 +17,48 @@ docker run -d \
--restart unless-stopped \
datafuselabs/databend
```
检查 Databend 是否成功运行:

:::tip 国内用户
如果拉取镜像较慢,可替换为国内镜像:
```shell
registry.databend.cn/public/databend:latest
```
docker logs -f databend
```
等待直到您看到日志显示 Databend 和 MinIO 已准备就绪。
:::

## 2. 连接到 Databend
安装 bendsql (Databend CLI):
等待 Databend 就绪:

```
curl -fsSL https://repo.databend.com/install/bendsql.sh | bash
echo "export PATH=$PATH:~/.bendsql/bin" >>~/.bash_profile
source ~/.bash_profile
```shell
docker logs -f databend
```

连接到 Databend:
```
bendsql -udatabend -pdatabend
```
看到 `Databend Query started` 即表示启动成功。

## 3. 执行基本数据导入
### 步骤 1:创建外部存储桶 (myupload)
安装 mc (MinIO 客户端) 并创建存储桶:
## 2. 连接

```
wget https://dl.min.io/client/mc/release/linux-amd64/mc
sudo cp mc /usr/local/bin/ && sudo chmod +x /usr/local/bin/mc
mc alias set myminio http://localhost:9000 minioadmin minioadmin
mc mb myminio/myupload
mc ls myminio
```
预期输出:
```
[0001-01-01 08:05:43 LMT] 0B databend/
[2025-04-12 08:43:59 CST] 0B myupload/
```
安装 BendSQL:

### 步骤 2:生成 CSV 文件并上传到 myupload
```
echo -e "id,name,age,city\n1,John,32,New York\n2,Emma,28,London\n3,Liam,35,Paris\n4,Olivia,40,Berlin\n5,Noah,29,Tokyo" > data.csv
mc cp data.csv myminio/myupload/
mc ls myminio/myupload/
```
### 步骤 3:创建外部 Stage 并检查数据
在 bendsql 中运行:
```
CREATE STAGE mystage 's3://myupload'
CONNECTION=(
endpoint_url='http://127.0.0.1:9000',
access_key_id='minioadmin',
secret_access_key='minioadmin',
region='us-east-1'
);
```
显示外部 Stage @mystage 中的文件:
```
LIST @mystage;
```
| name | size | md5 | last_modified | creator |
|----------|--------|-------------------|-----------------------|-------------|
| String | UInt64 | Nullable(String) | String | Nullable(String) |
| data.csv | 104 | "a27fa15258911f534fb795a8c64e05d4" | 2025-04-12 00:51:11.015 +0000 | NULL |

预览 CSV 数据:
```
SELECT $1, $2, $3, $4 FROM @mystage/data.csv (FILE_FORMAT=>'CSV') LIMIT 10;
```
| \$1 | \$2 | \$3 | \$4 |
|-------------------|-------------------|-------------------|-------------------|
| Nullable(String) | Nullable(String) | Nullable(String) | Nullable(String) |
| id | name | age | city |
| 1 | John | 32 | New York |
| 2 | Emma | 28 | London |
| 3 | Liam | 35 | Paris |
| 4 | Olivia | 40 | Berlin |
| 5 | Noah | 29 | Tokyo |


### 步骤 4:创建表并加载数据
```shell
curl -fsSL https://repo.databend.com/install/bendsql.sh | bash
echo "export PATH=$PATH:~/.bendsql/bin" >> ~/.bash_profile
source ~/.bash_profile
```
CREATE DATABASE wubx;
USE wubx;

CREATE TABLE t_person (
id INT,
name VARCHAR,
age INT UNSIGNED,
city VARCHAR
);

COPY INTO t_person FROM @mystage PATTERN='.*[.]csv' FILE_FORMAT=(TYPE=CSV, SKIP_HEADER=1);
连接到 Databend:

```shell
bendsql -u databend -p databend
```

| File | Rows_loaded | Errors_seen | First_error | First_error_line |
|-----------|-------------|-------------|------------------|------------------|
| String | Int32 | Int32 | Nullable(String) | Nullable(Int32) |
| data.csv | 5 | 0 | NULL | NULL |
## 3. 验证

### 步骤 5:查询数据
```
SELECT * FROM t_person;
```sql
CREATE TABLE t (id INT, name VARCHAR);
INSERT INTO t VALUES (1, 'Databend');
SELECT * FROM t;
```
| id | name | age | city |
|----------|----------|----------|----------|
| Nullable(Int32) | Nullable(String) | Nullable(UInt32) | Nullable(String) |
| 1 | John | 32 | New York |
| 2 | Emma | 28 | London |
| 3 | Liam | 35 | Paris |
| 4 | Olivia | 40 | Berlin |
| 5 | Noah | 29 | Tokyo |

🚀 现在您已经成功将数据导入到 Databend 中了!
完成!如需了解分组件部署的方式,请参考[在 Docker 上部署](../02-deployment/01-non-production/00-deploying-local.md)。

## 替代方案:Databend Cloud
如果设置本地环境比较麻烦,您可以尝试 [Databend Cloud](https://www.databend.com) 获得完全托管的体验。

> 💬 **社区支持**
> 有疑问?联系我们的团队:
> 💬 [Slack 讨论](https://link.databend.com/join-slack)
如果不想搭建本地环境,可以直接使用 [Databend Cloud](https://www.databend.com) 的全托管服务。
Loading
Loading