PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

बैच स्क्रिप्ट में psql pg_dump कमांड को कॉल करना

यहाँ एक समाधान है:

@echo off
SET TableListeFile=C:\Users\mtuna\Documents\dumpfiles\database_list.txt

REM Saveing all tables name of database test_db on a temp file: database_list.txt  
psql -U postgres  -d test_db -t -c "SELECT table_name FROM information_schema.tables WHERE table_schema='public' AND table_type='BASE TABLE'" -o "%TableListeFile%"

REM Loop on liste tables name:
FOR /F "tokens=*" %%I IN (%TableListeFile%) DO (
REM Dump each table on file
pg_dump  -U postgres -h localhost -t %%I test_db > "C:\Users\mtuna\Documents\dumpfiles\%%I.sql"
)
REM Delete temp file
del /Q %TableListeFile%

यह आपको प्रत्येक डंप के लिए पासवर्ड इनपुट के लिए संकेत देगा। यदि आप प्रचारित नहीं होना चाहते हैं, तो आप Pgpass का उपयोग कर सकते हैं फ़ाइल

आशा है कि यह मदद करता है।

होउरी।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL एक कस्टम डेटा प्रकार के साथ एक फ़ंक्शन लौटाता है

  2. UNION, EXCEPT, या INTERSECT का उपयोग करते समय PostgreSQL में 'ERROR:  कॉलम "colname" मौजूद नहीं है' ठीक करें

  3. यूटीसी में दिनांक और समय - उन्हें पोस्टग्रेज में कैसे स्टोर करें?

  4. पर्ल + पोस्टग्रेएसक्यूएल-- सेलेक्टिव कॉलम टू रो ट्रांसफर

  5. PostgreSQL CTE कार्य करने के लिए पैरामीटर के रूप में रिकॉर्ड करता है