PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да предам тайната на DB AWS в tomcat context.xml?

Ако искате да заредите идентификационните данни на DB динамично. Възможно е само за времето, когато Tomcat зарежда context.xml веднъж (защото Tomcat чете променливата на средата само веднъж при стартиране).

Забележете, че по време на изпълнение, когато contxt.xml променете съответните презареждания на уеб приложения. Tomcat не се рестартира.

Така че трикът е да се доставят идентификационни данни за DB като JVM параметър/аргумент, като горния ${catalina.base}

Има 3 етапа:

  1. Декларирайте и задайте стойност на променливата на средата:

    export DB_CREDENTIALS='*****'
    

    Добро място е скриптът за влизане на потребители на Tomcat.bash_profile , или Tomcat среди setenv.sh

  2. Създайте JVM параметър (системна променлива) за променлива на средата:добавете следния ред към setenv.sh преди последния ред.

    -Denvironment.db.credentials=${DB_CREDENTIALS} \
    
  3. Използвайте/извикайте декларирания JVM параметър в context.xml. Например:

    url="jdbc:postgresql://**********:****/${environment.db.credentials}"
    



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да заявите postgres на незадължителни параметри?

  2. Изчисляване на дата в Postgres чрез добавяне на месеци?

  3. Бързо намиране на подобни низове с PostgreSQL

  4. Как да конфигурирате PostgreSQL с Postgis за изчисляване на разстояния

  5. Получаване на стойност на колона от предишния ред в postgres не може да използва функцията за прозорец в UPDATE