Guest User

Untitled

a guest
Feb 20th, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.94 KB | None | 0 0
  1. #!/bin/bash
  2. echo "start"
  3. user=root
  4. pass=root
  5. database=centent_db_dev
  6. o_user=OR_AD
  7. o_pass=or_ad
  8. o_database=or
  9. o_user_upper=OR_AD
  10. path="$(pwd)/mod_bk.sql"
  11. echo "@$path"
  12. echo "create bk file"
  13. rm mod_bk.sql
  14. rm output.sql
  15. touch mod_bk.sql
  16. touch output.sql
  17.  
  18. echo "write disable keys script to file"
  19. echo "begin for cur in (select fk.owner, fk.constraint_name , fk.table_name from all_constraints fk, all_constraints pk where fk.CONSTRAINT_TYPE = 'R' and pk.owner = '$o_user_upper' and fk.r_owner = pk.owner and fk.R_CONSTRAINT_NAME = pk.CONSTRAINT_NAME ) loop execute immediate 'ALTER TABLE \"'|| cur.owner ||'\".\"'||cur.table_name||'\" MODIFY CONSTRAINT \"'||cur.constraint_name||'\" DISABLE'; end loop;" >> mod_bk.sql
  20. echo "for cur in (SELECT a.TABLE_NAME, a.OWNER FROM ALL_TABLES a WHERE a.OWNER = '$o_user') loop execute immediate 'TRUNCATE TABLE \"'|| cur.OWNER ||'\".\"'|| cur.TABLE_NAME ||'\" drop storage'; end loop;" >> mod_bk.sql
  21. echo "mysql dump"
  22. mysqldump -u $user --password=$pass --no-create-info --skip-add-locks --skip-quote-names --extended-insert=FALSE --compact $database > ./bk.sql
  23. sed -i 's/\*\*\*//g' bk.sql
  24. sed -i 's/`//g' bk.sql
  25. sed -i 's/INTO TABLE_COORD/INTO TABLE_COORDINATES/g' bk.sql
  26. sed -i 's/INTO User/INTO Users/g' bk.sql
  27. sed -i 's/INTO Users_Entitlement/INTO User_Entitlement/g' bk.sql
  28. sed -i "s/\&/\&\'\|\|\'/g" bk.sql
  29. #echo $(cat bk.sql) >> mod_bk.sql
  30. echo "for cur in (select fk.owner, fk.constraint_name , fk.table_name from all_constraints fk, all_constraints pk where fk.CONSTRAINT_TYPE = 'R' and pk.owner = '$o_user' and fk.r_owner = pk.owner and fk.R_CONSTRAINT_NAME = pk.CONSTRAINT_NAME ) loop execute immediate 'ALTER TABLE \"'|| cur.owner ||'\".\"'|| cur.table_name ||'\" MODIFY CONSTRAINT \"'|| cur.constraint_name ||'\" ENABLE'; end loop; end;" >> mod_bk.sql
  31. #echo $(cat mod_bk.sql | tr -d '\n') >> output.sql
  32.  
  33. echo $(cat mod_bk.sql | tr -d '\n') | sqlplus $o_user/$o_pass
  34. echo "sqlplus -S $o_user/$o_pass @mod_bk.sql"
  35. echo "done"
  36. exit 0;
Add Comment
Please, Sign In to add comment