Gaussdb安装和连接idea
GaussDB的安装
-
首先关闭防火墙
systemctl disable firewalld.service
永久关闭防火墙(发生在下次启动)
systemctl stop firewalld.service
关闭本次防火墙
查看防火墙状态systemctl status firewalld.service
查询的状态是Dead表明防火墙关闭。
2.安装依赖
如果widows复制后服务器粘不了
把命令放在文本文档中
使用xftp上传到服务器
通过服务器桌面的“我的电脑”打开”/root”,然后把上传到服务器的文档打开
把文档中的命令复制一下
yum install -y zlib readline python python-devel
perl-ExtUtils-Embed readline-devel zlib-devel
lsof expect mlocate openssl-devel sqlite-devel bzip2-devel
libffi libffi-devel gcc gcc-c++ ntp ntp-date
回车 安装
高斯的GuassDB需要创建omm的用户
3.创建用户
第一条指令:添加数据库管理组groupadd dbgrp
第二条指令:添加omm用户, useradd -g dbgrp -d /home/omm -m -s /bin/bash omm
groupadd dbgrp
useradd -g dbgrp -d /home/omm -m -s /bin/bash omm
4.解压上传的包
一般有一个GaussDb的包
包需要解压
把GaussDB包先用windows的解压软件解一下
解压后有一个文件夹,进入文件夹
然后在服务器中解压上传的包
使用tar –zxvf解压,回车即可
5.进入解压文件夹,改文件
目录名是tab键补齐的
6.修改文件install.py
7.vi编辑器进入文件install.py
回车
按键盘的:/self.run_pkg_name
:/self.run_pkg_name
回车
继续查找
找到if的语句,按键盘i键,进入insert模式,把if语句两行注释掉.
图中两行加#号,注意全角和半角,这里是半角
按动esc,使用:wq保存文件
8.安装GaussDB
安装成功标志
保证内存6G以上,硬盘50G
python install.py -U omm:dbgrp -R /opt/gaussdb/app -D
/opt/gaussdb/data -C LSNR_ADDR=ip -C LSNR_PORT=1888
ip记得写自己的
这里命令中需要改ip地址,检查跟自己ip地址的一样不
9.切换用户,GaussDB使用omm
Su omm
切换后变成$符号
连接高斯 zsql
初始没有使用使用用户,使用系统用户sys,密码Changeme_123
出现y/n的提示,写y
进入到SQL语句
GaussDB100没有库的概念,只有表的概念
在表myuser中插入语句。
查看
10.GaussDB的sys用户只能在服务器使用,需要springboot连接GaussDB,需要自已创用户
Create user smith identified by abcd_1234;
创建用户后,可以连接用户
如果是$ zsql smith/abcd_1234@ip:1888
现在在SQL>环境内,可以用connect
GuassDB分为白名单和黑名单,在白名单就可以登录
退出GaussDB,修改白名单
修改切换回root
找到GaussDb的安装路径。
进入opt/guassdb
现在对白名单修改,进入data
Zhba.conf是白名单
开发时,你的windows也连接gauss
查windows的ip,使用win+R运行cmd
然后输入ipconfig/all
找与服务器的ip只差1位的ip
保存退出
11.把虚拟机重启,可使用reboot命令
启动后,多一个omm;但是我们还是点击登录,root,密码登录
12.重启后,手动启动GaussDB
进入到GaussDB的目录,记得关防火墙,否则后续idea连接gaussdb会报错滴🥲
进入到app的目录
一般启动在bin中
启动在zctl.py中
启动前切换用户:su omm
启动指令
报错,先ifconfig,先看ip
启动成功的界面
先用sys用户连接
连接sys后
如果连接报错,赋给权限
授权限连接一下sys,只有sys可以做权限
Gaussdb创建的用户没有select,create,insert,update,delete权限均不存在。
如果连接smith时报错,就给create session的权限
再连接smith进行登录Gaussdb
前面把sys.myuser的增删改查都给smith,验证一下
插入语句测试
更新一条测试
查询一下
删除的实现
最后查询一下
Smith具备增删改查,后面springboot连接就可以实现用户表的增删改查。
注意:
Ip改变
- 虚拟机正常关机(非)
- 经常变换网络
Ip改变的话就按照下面步骤来改正自己的ip:
在data目录下
也就是设白名单的目录。
找到zengine.ini
使用vi编辑器打开
更换完保存.
然后退出二级目录,进入到app/bin 目录下,重启gaussdb
然后zsql连接
如果连接出现
出现“create session privilege”,除了sys 需要重启电脑,重启GaussDB实例。其它用户直接使用sys连接
如果连接smith时报错,就给create session的权限
然后可以connet连接。
SpringBoot连接GaussDB
只可以本地加载,远程仓库没有
打开idea编辑器,先把jar包安装本地
找编辑器的maven
打开后
击”m”图标项
在mvn命令行执行
直接执行后
安装后在pom.xml中导包
Maven后重新加载
加载后打开application.yml
运行
启动后正常
回到xml中UserMapper.xml
运行程序
坏包的删除方法
安装成功后
重新加载maven的pom文档
回到application.yml 文件中
保证Driver是ZenithDriver
然后运行程序,访问得到
保证用户在gassdb平台操作正常,页面操作必须正常。
条件:
UserMapper.xml必须是
代码实现:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.pojo.UserMapper">
<select id="selectUser" resultType="com.bean.MyUser">
select * from sys.myuser
</select>
<insert id="addUser" parameterType="com.bean.MyUser">
insert into sys.myuser(username,password) values (#{username},#{password})
</insert>
<!--这里的参数只有id值,直接在模板使用id值-->
<delete id="deleteUser" parameterType="int">
delete from sys.myuser where id=#{id}
</delete>
<update id="updateUser" parameterType="com.bean.MyUser">
update sys.myuser set username=#{username},password=#{password} where id=#{id}
</update>
<select id="selectUserById" parameterType="int" resultType="com.bean.MyUser">
select * from sys.myuser where id=#{id}
</select>
</mapper>
spring:
thymeleaf:
prefix: classpath:/templates/
suffix: .html
datasource:
driver-class-name: com.huawei.gauss.jdbc.ZenithDriver
url: jdbc:zenith:@192.168.174.122:1888
username: smith
password: abcd_1234
mybatis:
mapper-locations: classpath:mybatis/*.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>Myguassdbb</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.1.10.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
<version>2.1.10.RELEASE</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>mysql</groupId>-->
<!-- <artifactId>mysql-connector-java</artifactId>-->
<!-- <version>8.0.33</version>-->
<!-- </dependency>-->
<dependency>
<groupId>com.huawei.gauss.jdbc</groupId>
<artifactId>ZenithDriver</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.1</version>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.10</version>
</dependency>
</dependencies>
</project>