Comment puis-je suf de root à db2inst1 et invoquer un script SQL, en une seule ligne?
-
22-08-2019 - |
Question
Comment puis-je su
de root
à db2inst1
Et invoque un script SQL tout en 1 ligne? Je pense à quelque chose comme ça:
su db2inst1 | db2 CONNECT TO myDatabase USER db2inst1 USING mypw; db2 -c -i -w -td@ -f /tmp/deploy/sql/My.sql | exit;
Des idées?
La solution
Vous pouvez utiliser le -c
ou --command=<command>
option pour exécuter une commande avec su
. Dans votre cas, quelque chose comme ceci:
su -c 'db2 CONNECT TO myDatabase USER db2inst1 USING mypw; db2 -c -i -w -td@ -f /tmp/deploy/sql/My.sql' db2inst1
Autres conseils
Si vous utilisez Solaris et que vous ne voulez pas / pouvez entrer le mot de passe, caisse pFexec.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow