华为开源数据库opengauss docker版本安装使用

本地环境需要准备centos7.6_x86,如果没有,直接使用docker版本的单节点数据库用于调试吧

1.搜索镜像

docker search opengauss

华为开源数据库opengauss docker版本安装使用_第1张图片

2.拉取镜像

docker pull docker.io/enmotech/opengauss

3.启动镜像为容器

docker run --name opengauss \
--privileged=true \
-d -v /etc/localtime:/etc/localtime \
-p 8888:5432 \
-e GS_NODENAME=gaussdb \
-e GS_PASSWORD=Enmo@123 \
-e GS_USERNAME=gaussdb \
-e GS_PORT=5432 \
--name=gauss \
enmotech/opengauss:latest

启动参数解释

GS_PASSWORD
设置openGauss数据库的超级用户omm以及测试用户gaussdb的密码,需要:密码长度8个字符以上,必须同时包含英文字母,数字,以及特殊符号

GS_NODENAME
指定数据库节点名称 默认为gaussdb

GS_USERNAME
指定数据库连接用户名 默认为gaussdb

GS_PORT
指定数据库端口,默认为5432。

4.下载windows客户端DataStudio连接工具

https://opengauss.obs.cn-south-1.myhuaweicloud.com/2.0.0/DataStudio_win_64.zip

5.使用DataStudio连接数据库(默认数据库为 postgres )

华为开源数据库opengauss docker版本安装使用_第2张图片

6.安装成功

华为开源数据库opengauss docker版本安装使用_第3张图片

7.添加模拟数据

(1).右键创建数据库创建模式,创建普通表,添加字段

华为开源数据库opengauss docker版本安装使用_第4张图片

(2).选中表右键导入表数据

华为开源数据库opengauss docker版本安装使用_第5张图片

(3).在终端控制台进行查询

华为开源数据库opengauss docker版本安装使用_第6张图片

8.jdbc开发连接调试

(1).jdbc依赖下载地址,这里使用2.0.0,根据自己安装的数据库版本下载对应的jdbc,将依赖添加到开发工具的环境中

https://opengauss.obs.cn-south-1.myhuaweicloud.com/2.0.0/x86/openGauss-2.0.0-JDBC.tar.gz

(2).上代码 字符串注意使用单引号,双引号会被识别成字段,会提示不存在 [does not exist]


import java.sql.*;
import java.util.ArrayList;

public class Client {
    public static void main(String[] args) throws Exception {
        String url = "jdbc:postgresql://bigdata02:8888/mydb";//连接地址
        String user = "gaussdb";//用户名
        String password = "Enmo@123";//密码
        Class.forName("org.postgresql.Driver");//加载驱动
        Connection conn = DriverManager.getConnection(url, user, password);//获取连接
        Statement stat = conn.createStatement();
        String sqlInit = "SET search_path = 'myModel'";
        stat.execute(sqlInit);//进入之前创建的myModel模式中
        String sql = "select * from tb";
        ResultSet rs = stat.executeQuery(sql);//执行查询语句
        ResultSetMetaData metaData = rs.getMetaData();//获取字段列表
        ArrayList keys = new ArrayList<>(metaData.getColumnCount());//记录字段信息
        for (int i = 0; i < metaData.getColumnCount(); i++) {
            keys.add(metaData.getColumnName(i + 1));//获取字段从1开始
        }
        while (rs.next()) {//解析字段值
            for (String key : keys) {
                String value = rs.getString(key);
                System.out.print(key + ":" + value + " ");
            }
            System.out.println();
        }
        stat.close();//回收资源
        rs.close();
        conn.close();

    }
}

(3).运行结果

8.Psycopg开发(Python)连接调试

(1).安装psycopg2依赖

pip3 install psycopg2

(2).上python3代码

import psycopg2

# 创建连接对象
conn = psycopg2.connect(database="postgres", user="gaussdb", password="Enmo@123", host="bigdata02", port="8888")
cur = conn.cursor()  # 创建指针对象
# 创建表
cur.execute("CREATE TABLE student(id integer,name varchar,sex varchar);")
# 插入数据
cur.execute("INSERT INTO student(id,name,sex)VALUES(%s,%s,%s)", (1, 'Aspirin', 'M'))
cur.execute("INSERT INTO student(id,name,sex)VALUES(%s,%s,%s)", (2, 'Taxol', 'F'))
cur.execute("INSERT INTO student(id,name,sex)VALUES(%s,%s,%s)", (3, 'Dixheral', 'M'))
# 获取结果
cur.execute('SELECT * FROM student')
results = cur.fetchall()
print(results)
# 关闭连接
conn.commit()
cur.close()
conn.close()

(3).运行结果

华为开源数据库opengauss docker版本安装使用_第7张图片

你可能感兴趣的:(docker,数据库)