diff options
author | Guangrong Fu <fu.guangrong@zte.com.cn> | 2017-09-05 16:46:26 +0800 |
---|---|---|
committer | Guangrong Fu <fu.guangrong@zte.com.cn> | 2017-09-05 17:20:51 +0800 |
commit | 6481057c46c57f389e0fb17b7065941ed28299b8 (patch) | |
tree | 0ce960a5283f9da0df74edb971f6ce4ac371a633 | |
parent | 2def6b625452293a345ae73c4b91abaf9e728d72 (diff) |
Change the DB from MySQL to PostgreSQL
Change-Id: If3e82cca0b27c5e486762b22305c1575d76789fe
Issue-ID: HOLMES-49
Signed-off-by: Guangrong Fu <fu.guangrong@zte.com.cn>
-rw-r--r-- | pom.xml | 9 | ||||
-rw-r--r-- | rulemgt-standalone/src/main/assembly/Dockerfile | 3 | ||||
-rw-r--r-- | rulemgt-standalone/src/main/assembly/bin/initDB.sh | 9 | ||||
-rw-r--r-- | rulemgt-standalone/src/main/assembly/bin/run.sh | 4 | ||||
-rw-r--r-- | rulemgt-standalone/src/main/assembly/conf/rulemgt.yml | 8 | ||||
-rw-r--r-- | rulemgt-standalone/src/main/assembly/dbscripts/postgresql/onap-holmes_rulemgt-createobj.sql | 59 | ||||
-rw-r--r-- | rulemgt/pom.xml | 4 |
7 files changed, 80 insertions, 16 deletions
@@ -48,7 +48,6 @@ <stringtemplate.version>3.2.1</stringtemplate.version>
- <mysql.connector.version>5.1.38</mysql.connector.version>
<dropwizard.version>0.8.0</dropwizard.version>
<reflections.version>0.9.9</reflections.version>
<swagger.version>1.5.3</swagger.version>
@@ -57,6 +56,7 @@ <jaxrs.consumer.version>5.0</jaxrs.consumer.version>
<slf4j.version>1.6.1</slf4j.version>
<quartz.version>2.2.1</quartz.version>
+ <postgres.jdbc.driver.version>42.1.1</postgres.jdbc.driver.version>
<packagename>onap-holmes-rulemgt</packagename>
@@ -119,11 +119,12 @@ </dependency>
<dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>${mysql.connector.version}</version>
+ <groupId>org.postgresql</groupId>
+ <artifactId>postgresql</artifactId>
+ <version>${postgres.jdbc.driver.version}</version>
</dependency>
+
<dependency>
<groupId>org.antlr</groupId>
<artifactId>stringtemplate</artifactId>
diff --git a/rulemgt-standalone/src/main/assembly/Dockerfile b/rulemgt-standalone/src/main/assembly/Dockerfile index 2be3e4e..775f303 100644 --- a/rulemgt-standalone/src/main/assembly/Dockerfile +++ b/rulemgt-standalone/src/main/assembly/Dockerfile @@ -20,7 +20,8 @@ WORKDIR /home/holmes ADD holmes-rulemgt-standalone-*-linux64.tar.gz /home/holmes/ RUN chmod 755 /home/holmes/bin/*.sh -#RUN apt-get install -y mysql-client +#install the postgres client +RUN apt-get install -y postgresql-client-9.5 postgresql-contrib-9.5 ENTRYPOINT /home/holmes/bin/run.sh diff --git a/rulemgt-standalone/src/main/assembly/bin/initDB.sh b/rulemgt-standalone/src/main/assembly/bin/initDB.sh index 6ec9947..c9b5705 100644 --- a/rulemgt-standalone/src/main/assembly/bin/initDB.sh +++ b/rulemgt-standalone/src/main/assembly/bin/initDB.sh @@ -23,13 +23,16 @@ port=$3 host=$4 echo "start init holmes rulemgt db" main_path=$HOME/.. -cat $main_path/dbscripts/mysql/onap-holmes_rulemgt-createobj.sql +cat $main_path/dbscripts/postgresql/onap-holmes_rulemgt-createobj.sql echo "user="$user -echo "password"$password +echo "password="$password echo "port="$port echo "host="$host -mysql -u$user -p$password -P$port -h$host <$main_path/dbscripts/mysql/onap-holmes_rulemgt-createobj.sql +export PGPASSWORD=$password +psql -U $user -p $port -h $host -f $main_path/dbscripts/postgresql/onap-holmes_rulemgt-createobj.sql +psql -U $user -p $port -h $host -d holmes --command 'select * from aplus_rule;' sql_result=$? +unset PGPASSWORD cat "sql_result="$sql_result if [ $sql_result != 0 ] ; then echo "failed to init rulemgt database!" diff --git a/rulemgt-standalone/src/main/assembly/bin/run.sh b/rulemgt-standalone/src/main/assembly/bin/run.sh index 4b36f72..2142059 100644 --- a/rulemgt-standalone/src/main/assembly/bin/run.sh +++ b/rulemgt-standalone/src/main/assembly/bin/run.sh @@ -31,14 +31,14 @@ echo @JAVA_OPTS@ $JAVA_OPTS class_path="$main_path/:$main_path/holmes-rulemgt.jar" echo @class_path@ $class_path -sed -i "s|url:.*|url: jdbc:mysql://$URL_JDBC/holmes|" "$main_path/conf/rulemgt.yml" +sed -i "s|url:.*|url: jdbc:postgresql://$URL_JDBC/holmes|" "$main_path/conf/rulemgt.yml" sed -i "s|msbServerAddr:.*|msbServerAddr: http://$MSB_ADDR|" "$main_path/conf/rulemgt.yml" export SERVICE_IP=`hostname -i` echo SERVICE_IP=${SERVICE_IP} -./bin/initDB.sh root rootpass 3306 "${URL_JDBC%:*}" +./bin/initDB.sh holmes holmespwd 5432 "${URL_JDBC%:*}" "$JAVA" $JAVA_OPTS -classpath "$class_path" org.onap.holmes.rulemgt.RuleActiveApp server "$main_path/conf/rulemgt.yml" diff --git a/rulemgt-standalone/src/main/assembly/conf/rulemgt.yml b/rulemgt-standalone/src/main/assembly/conf/rulemgt.yml index fe2e18e..0b9a24a 100644 --- a/rulemgt-standalone/src/main/assembly/conf/rulemgt.yml +++ b/rulemgt-standalone/src/main/assembly/conf/rulemgt.yml @@ -47,10 +47,10 @@ logging: #database database: - driverClass: com.mysql.jdbc.Driver - user: root - password: rootpass - url: jdbc:mysql://10.74.156.206:3306/holmes + driverClass: org.postgresql.Driver + user: holmes + password: holmespwd + url: jdbc:postgresql://169.254.59.196:5432/holmes properties: charSet: UTF-8 maxWaitForConnection: 1s diff --git a/rulemgt-standalone/src/main/assembly/dbscripts/postgresql/onap-holmes_rulemgt-createobj.sql b/rulemgt-standalone/src/main/assembly/dbscripts/postgresql/onap-holmes_rulemgt-createobj.sql new file mode 100644 index 0000000..fb1c86d --- /dev/null +++ b/rulemgt-standalone/src/main/assembly/dbscripts/postgresql/onap-holmes_rulemgt-createobj.sql @@ -0,0 +1,59 @@ +-- +-- Copyright 2017 ZTE Corporation. +-- +-- Licensed under the Apache License, Version 2.0 (the "License"); +-- you may not use this file except in compliance with the License. +-- You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. +-- +/******************drop old database and user***************************/ +\c postgres; + +DROP DATABASE IF EXISTS holmes; + +DROP ROLE IF EXISTS holmes; + +/******************CREATE NEW DATABASE AND USER***************************/ +CREATE DATABASE holmes; + +CREATE ROLE holmes with PASSWORD 'holmespwd' LOGIN; + +\encoding UTF8; + +/******************DELETE OLD TABLE AND CREATE NEW***************************/ +\c holmes; + +CREATE TABLE APLUS_RULE ( + RID VARCHAR(30) NOT NULL, + NAME VARCHAR(150) NOT NULL, + DESCRIPTION VARCHAR(4000) NULL, + ENABLE SMALLINT NOT NULL, + TEMPLATEID BIGINT NOT NULL, + ENGINEID VARCHAR(20) NOT NULL, + ENGINETYPE VARCHAR(20) NOT NULL, + CREATOR VARCHAR(20) NOT NULL, + CREATETIME TIMESTAMP NOT NULL, + UPDATOR VARCHAR(20) NULL, + UPDATETIME TIMESTAMP NULL, + PARAMS VARCHAR(4000) NULL, + CONTENT VARCHAR(4000) NOT NULL, + VENDOR VARCHAR(100) NOT NULL, + PACKAGE VARCHAR(255) NULL, + PRIMARY KEY (RID), + UNIQUE (NAME) +); + +CREATE INDEX IDX_APLUS_RULE_ENABLE ON APLUS_RULE (ENABLE); +CREATE INDEX IDX_APLUS_RULE_TEMPLATEID ON APLUS_RULE (TEMPLATEID); +CREATE INDEX IDX_APLUS_RULE_ENGINEID ON APLUS_RULE (ENGINEID); +CREATE INDEX IDX_APLUS_RULE_ENGINETYPE ON APLUS_RULE (ENGINETYPE); + +GRANT ALL PRIVILEGES ON APLUS_RULE TO holmes; + diff --git a/rulemgt/pom.xml b/rulemgt/pom.xml index 9a9daf1..5aa0b72 100644 --- a/rulemgt/pom.xml +++ b/rulemgt/pom.xml @@ -83,8 +83,8 @@ <artifactId>lombok</artifactId> </dependency> <dependency> - <groupId>mysql</groupId> - <artifactId>mysql-connector-java</artifactId> + <groupId>org.postgresql</groupId> + <artifactId>postgresql</artifactId> </dependency> <dependency> <groupId>org.quartz-scheduler</groupId> |