Guassdb(高斯数据库)使用教程
gsql命令
gsql
连接数据库
gsql -h master01 -p 15400 -d postgres -U yangyi -W @HuangLve2004 -r
- 常用参数说明
参数 | 说明 |
---|
-h | 指定数据库所在的IP或者主机名 |
-p | guassdb运行的端口 |
-d | 指定访问数据库的名称 |
-U | 指定登陆数据库的用户名 |
-w | 用户的登陆密码 |
-r | 开启在客户端命令行中的编辑模式 |
-c | 声明gsql要执行一条字符串命令然后退出,不进入guassdb的命令行 |
-f | 使用指定文件作为命令源,而不是交互的命令 |
-l | 列出所有数据库,然后退出 |
-A | 切换为非对称输出模式 |
-t | 只打印行 |
-F | 设置域分割符,默认是"|" |
-E | 回显其他命令的实际底层命令 |
-1 | 当gsql使用-f选项执行脚本时,加上该参数会将执行的脚本当作一个事务执行,发生错误时会回滚 |
-q | 安静模式,执行时不会打印额外信息 |
-o | 将gsql的输出重定向输出到指定的文件中 |
gsql -h master01 -p 15400 -d postgres -c “select * from t1”
gsql -h master01 -p 15400 -d postgres -f /home/test.sql
gsql -h master01 -p 15400 -d postgres -l
gsql
元命令
元命令 | 声明 |
---|
\h | 显示帮组信息 |
\i file | 从文件file中读取内容,并将其当作输入命令 |
\l[+] | 列出服务器上所有数据库的详细信息,"+"字符是可选项 |
\db[+] | 列出所有可用的数据库表信息 |
\c | 连接到另一个新的数据库 |
? | 帮助信息 |
\d | 列出当前模式下所有的表、视图和序列 |
\dE | 列出外部表 |
\di | 列出索引 |
\ds | 列出序列 |
\du | 列出所有数据库角色 |
\q | 退出 |
guassdb远程连接
- 修改配置文件
install/data/dn/pg_hba.conf
,允许远程登陆
- 修改配置文件``,修改密码加密的方式
guassdb
的使用
- 创建用户,
create user yangyi identity 'open@123'
- 修改用户密码,
alter user yangyi ident 'MIMA2004@yangyi'
- 权限管理
//赋予所有表的所有权限给xiaoming
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO xiaoming;
//单独 赋予tuser表的所有权限给wechart用户
GRANT ALL PRIVILEGES ON tuser TO wechart;
# 使用序列数据类型
create table test2(
id serial primary key,
name char(10) not null,
age int(3) not null);
使用JDBC操作GuassDB
<dependency>
<groupId>org.opengauss</groupId>
<artifactId>opengauss-jdbc</artifactId>
<version>5.0.0</version>
</dependency>
driver=org.postgresql.Driver
url=jdbc:postgresql://192.168.79.140:15400/jdbc
username=yangyi
password=MIMA2004@yangyi
public class JDBCApplication {
private Properties properties = new Properties();
private Connection connection;
public JDBCApplication() throws Exception {
InputStream resourceAsStream = JDBCApplication.class.getClassLoader().getResourceAsStream("jdbc.properties");
//FileInputStream fileInputStream = new FileInputStream("jdbc.properties");
properties.load(resourceAsStream);
//驱动
String driver = properties.getProperty("driver");
//用户名
String username = properties.getProperty("username");
//密码
String password = properties.getProperty("password");
//url
String url = properties.getProperty("url");
//注册驱动
Class.forName(driver);
//获取连接
connection = DriverManager.getConnection(url,username,password);
}
public void testJDBC() throws Exception {
//插入数据
String sql = "insert into test1 (id,name) values (?,?)";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
preparedStatement.setInt(1,3);
preparedStatement.setString(2,"杨逸");
int update = preparedStatement.executeUpdate();
System.out.println("update = " + update);
//查询数据
sql = "select * from test1";
preparedStatement = connection.prepareStatement(sql);
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
int id = resultSet.getInt(1);
System.out.println("id = " + id);
String name = resultSet.getString(2);
System.out.println("name = " + name);
}
}
}