配置weblogic dndi
来源:互联网 发布:大数据平台基础设施 编辑:程序博客网 时间:2024/06/02 01:08
#!/bin/bashDATABASE_TYPE_MYSQL="MYSQL"DATABASE_TYPE_POSTGRESQL="POSTGRESQL"DATABASE_TYPE_ORACLE="ORACLE"DATABASE_TYPE_DAMENG="DAMENG"DATABASE_PORT_MYSQL=3306DATABASE_PORT_POSTGRESQL=5432DATABASE_PORT_ORACLE=1521DATABASE_PORT_DAMENG=12345DATABASE_DRIVER_NAME_MYSQL="com.mysql.jdbc.Driver"DATABASE_DRIVER_NAME_MYSQL_CLUSTER="com.mysql.jdbc.ReplicationDriver"DATABASE_DRIVER_NAME_POSTGRESQL="org.postgresql.Driver"DATABASE_DRIVER_NAME_ORACLE="oracle.jdbc.OracleDriver"DATABASE_DRIVER_NAME_DAMENG="dm.jdbc.driver.DmDriver"JDBC_DATASOURCE_NAME="sgccjndi-"$(date +"%Y")$(date +"%m")$(date +"%d")$(date +"%H")$(date +"%M")$(date +"%S")JNDI_NAME="sgccjndi"MINCAPACITY_DEFALT=10MAXCAPACITY_DEFALT=50INITIALCAPACITY_DEFALT=10MINCAPACITY=MAXCAPACITY=INITIALCAPACITY=DATABASE_ENCRYPTED_PSWD=DATABASE_DRIVER_NAME=JDBC_DRIVER_URL=DATABASE_CLUSTER_FLAG=DATABASE_PORT=DATABASE__PROXY_PORT=DATABASE_TYPE=`cat /var/config/PRIVATE__DATABASE_TYPE`DATABASE_NAME=`cat /var/config/PRIVATE__DATABASE_NAME`HOST_IP=`cat /var/config/PRIVATE__DATABASE_HOST`DATABASE_USER=`cat /var/config/PRIVATE__DATABASE_USER`DATABASE_PSWD=`cat /var/config/PRIVATE__DATABASE_PSWD` WLST_BIN="/home/weblogic/addtional_data"WLST_SCRIPT="./wlst.sh encryptpswd.py"init(){ if [ "$DATABASE_TYPE" = "" ] then echo "init failed : unknow database type" >> /root/weblogic_jndi.log exit 0 fi if [ "$HOST_IP" = "" ] then echo "init failed : HOST_IP is null" >> /root/weblogic_jndi.log exit 0 fi if [ "$DATABASE_NAME" = "" ] then echo "init failed : DATABASE_NAME is null" >> /root/weblogic_jndi.log exit 0 fi if [ "$DATABASE_USER" = "" ] then echo "init failed : DATABASE_USER is null" >> /root/weblogic_jndi.log exit 0 fi if [ "$DATABASE_PSWD" = "" ] then echo "init failed : DATABASE_PSWD is null" >> /root/weblogic_jndi.log exit 0 fi if [ "$MINCAPACITY" = "" ] then MINCAPACITY=$MINCAPACITY_DEFALT fi if [ "$MAXCAPACITY" = "" ] then MAXCAPACITY=$MAXCAPACITY_DEFALT fi if [ "$INITIALCAPACITY" = "" ] then INITIALCAPACITY=$INITIALCAPACITY_DEFALT fi #"is the database is cluster or not" if [[ $HOST_IP =~ "," ]] then DATABASE_CLUSTER_FLAG="Y" else DATABASE_CLUSTER_FLAG="N" fi}getEncryptPSWD(){ cd $WLST_BIN ENCRPT_COMMAND=$WLST_SCRIPT" "$DATABASE_PSWD" > tempass.txt" eval $ENCRPT_COMMAND passstr=`cat tempass.txt|grep {AES}` if [ "$passstr" = "" ] then echo "encrypt the password error" exit 1 else DATABASE_ENCRYPTED_PSWD=`echo ${passstr#*password}` fi echo $DATABASE_ENCRYPTED_PSWD DATABASE_ENCRYPTED_PSWD=$(echo $DATABASE_ENCRYPTED_PSWD|sed 's/\//\\\//g') echo $DATABASE_ENCRYPTED_PSWD return 0;}assembleParas(){ if [ "$DATABASE_TYPE" = "$DATABASE_TYPE_MYSQL" ] then echo $DATABASE_TYPE_MYSQL DATABASE_PORT=`cat /var/config/PRIVATE__DATABASE_PORT` if [ "$DATABASE_PORT" = "" ] then DATABASE_PORT=$DATABASE_PORT_MYSQL fi if [ "$DATABASE_CLUSTER_FLAG" = "Y" ] then JDBC_DRIVER_URL="jdbc:mysql:replication:\\/\\/"$HOST_IP":"$DATABASE_PORT"\\/"$DATABASE_NAME DATABASE_DRIVER_NAME=$DATABASE_DRIVER_NAME_MYSQL_CLUSTER else JDBC_DRIVER_URL="jdbc:mysql:\\/\\/"$HOST_IP":"$DATABASE_PORT"\\/"$DATABASE_NAME DATABASE_DRIVER_NAME=$DATABASE_DRIVER_NAME_MYSQL fi echo $JDBC_DRIVER_URL echo $DATABASE_ENCRYPTED_PSWD echo $JNDI_NAME elif [ "$DATABASE_TYPE" = "$DATABASE_TYPE_POSTGRESQL" ] then echo $DATABASE_TYPE_POSTGRESQL DATABASE__PROXY_PORT=`cat /var/config/DATABASE__PROXY_PORT` if [ "$DATABASE__PROXY_PORT" = "" ] then DATABASE_PORT=$DATABASE_PORT_POSTGRESQL else DATABASE_PORT=$DATABASE_PORT_POSTGRESQL fi if [ "$DATABASE_CLUSTER_FLAG" = "Y" ] then HOST_IP=`echo ${HOST_IP%%,*}` fi if [ "$HOST_IP" = "" ] then echo "POSTGRES HOST_IP IS NULL" exit 0 fi JDBC_DRIVER_URL="jdbc:postgresql:\\/\\/"$HOST_IP":"$DATABASE_PORT"\\/"$DATABASE_NAME DATABASE_DRIVER_NAME=$DATABASE_DRIVER_NAME_POSTGRESQL elif [ "$DATABASE_TYPE" = "$DATABASE_TYPE_ORACLE" ] then echo $DATABASE_TYPE_ORACLE DATABASE_PORT=`cat /var/config/PRIVATE__DATABASE_PORT` if [ "$DATABASE_PORT" = "" ] then DATABASE_PORT=$DATABASE_PORT_ORACLE fi JDBC_DRIVER_URL="jdbc:oracle:thin:@"$HOST_IP":"$DATABASE_PORT"\\/"$DATABASE_NAME DATABASE_DRIVER_NAME=$DATABASE_DRIVER_NAME_ORACLE elif [ "$DATABASE_TYPE" = "$DATABASE_TYPE_DAMENG" ] then echo $DATABASE_TYPE_DAMENG DATABASE_PORT=`cat /var/config/PRIVATE__DATABASE_PORT` if [ "$DATABASE_PORT" = "" ] then DATABASE_PORT=$DATABASE_PORT_DAMENG fi JDBC_DRIVER_URL="jdbc:dm:\\/\\/"$HOST_IP":"$DATABASE_PORT"\\/"$DATABASE_NAME DATABASE_DRIVER_NAME=$DATABASE_DRIVER_NAME_DAMENG echo $JDBC_DRIVER_URL echo $DATABASE_ENCRYPTED_PSWD echo $JNDI_NAME else echo "unknow database type" exit 1 fi}createJNDI(){ #if the jndi name exists jdbcFileINConfigExistFlag="N" jdbcFileName= cd /home/weblogic/oracle/Middleware/user_projects/domains/base_domain/config/jdbc sgccjndiline=`grep "<jndi-name>sgccjndi</jndi-name>" * ` if [ "$sgccjndiline" != "" ] then #sgccjndiline ORACLE-20150925123251-jdbc.xml: <jndi-name>sgccjndi</jndi-name> jdbcFileName=${sgccjndiline%%:*} #if exist first remove it rm -rf $jdbcFileName cd .. configsccjndiline=`cat config.xml|grep ${sgccjndiline%%:*}` if [ "$configsccjndiline" != "" ] then jdbcFileINConfigExistFlag="Y" fi fi jndifilename=$DATABASE_TYPE"-"$(date +"%Y")$(date +"%m")$(date +"%d")$(date +"%H")$(date +"%M")$(date +"%S")"-jdbc.xml" configbakfilename="config.xml"$(date +"%Y")$(date +"%m")$(date +"%d")$(date +"%H")$(date +"%M")$(date +"%S")".bak" cd /home/weblogic/addtional_data/temp cp ../jnditemplate.xml $jndifilename sed -i "s/JDBC_DATASOURCE_NAME/$JDBC_DATASOURCE_NAME/g" $jndifilename sed -i "s/JDBC_DRIVER_URL/$JDBC_DRIVER_URL/g" $jndifilename sed -i "s/DATABASE_DRIVER_NAME/$DATABASE_DRIVER_NAME/g" $jndifilename sed -i "s/DATABASE_USER/$DATABASE_USER/g" $jndifilename echo $DATABASE_ENCRYPTED_PSWD sed -i "s/DATABASE_ENCRYPTED_PSWD/$DATABASE_ENCRYPTED_PSWD/g" $jndifilename sed -i "s/JNDI_NAME/$JNDI_NAME/g" $jndifilename $jndifilename sed -i "s/INITIALCAPACITY/$INITIALCAPACITY/g" $jndifilename sed -i "s/MAXCAPACITY/$MAXCAPACITY/g" $jndifilename sed -i "s/MINCAPACITY/$MINCAPACITY/g" $jndifilename if [ "$DATABASE_TYPE" = "$DATABASE_TYPE_ORACLE" ] then sed -i "s/SQL SELECT 1/SQL SELECT 1 FROM DUAL/g" $jndifilename fi mv $jndifilename /home/weblogic/oracle/Middleware/user_projects/domains/base_domain/config/jdbc/ cp /home/weblogic/oracle/Middleware/user_projects/domains/base_domain/config/config.xml $configbakfilename cp -rf /home/weblogic/oracle/Middleware/user_projects/domains/base_domain/config/config.xml . echo $jdbcFileINConfigExistFlag echo $jdbcFileName echo $jndifilename if [ "$jdbcFileINConfigExistFlag" = "Y" ] then sed -i "s/$jdbcFileName/$jndifilename/g" config.xml else sed -i '/<admin-server-name>/ r ../jndiinconfigfiletemplate.xml' config.xml sed -i "s/JDBC_DATASOURCE_NAME/$JDBC_DATASOURCE_NAME/g" config.xml sed -i "s/JNDI-FILE-NAME/$jndifilename/g" config.xml fi yes|cp -rf config.xml /home/weblogic/oracle/Middleware/user_projects/domains/base_domain/config/ yes|rm -rf config.xml echo "createjndi"}main(){echo "开始..$(date)" >> /root/weblogic_jndi.loginitecho "1..$(date)...init 完成..." >> /root/weblogic_jndi.loggetEncryptPSWDecho "2..$(date)...getEncryptPSWD 完成...$(date)" >> /root/weblogic_jndi.logassembleParasecho "3..$(date)...assembleParas 完成...$(date)" >> /root/weblogic_jndi.logcreateJNDIecho "4..$(date)...createJNDI 完成...$(date)" >> /root/weblogic_jndi.logservice weblogic stopecho "5..$(date)...service weblogic stop 完成...$(date)" >> /root/weblogic_jndi.logservice weblogic startecho "6..$(date)...service weblogic start 完成...$(date)" >> /root/weblogic_jndi.log}main
0 0
- 配置weblogic dndi
- WEBLOGIC 配置
- WebLogic配置
- WEBLOGIC 配置
- weblogic配置
- weblogic 配置
- WebLogic配置
- weblogic配置
- weblogic配置
- weblogic配置
- weblogic配置
- 配置weblogic
- WebLogic 8安装配置
- WebLogic性能优化配置
- weblogic 8.1 配置笔记
- WebLogic 8.1安装配置
- ECLIPSE+WEBLOGIC开发配置
- WebLogic Domain 配置方法
- AWS、Azure和谷歌云计算价格比较
- java环境配置以及如何在cmd窗口运行java代码
- 保存图片到本地和系统图库
- 从零单排微信小程序--[0]:Hello World
- 为什么 iOS 开发中,控件一般为 weak 而不是 strong?
- 配置weblogic dndi
- adb fastboot 命令总结
- jQuery 效果 - animate() 方法
- 关于C语言的隐式类型转换
- jQuery 效果 - animate() 方法
- Android静默安装和自动安装
- NS2笔记 invalid command name "Agent/TCPSink/mTcpSink"......
- Java Class的热替换 自定义ClassLoader加载.class
- Quartz cron表达式格式