Advertisement
Guest User

Untitled

a guest
Mar 25th, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.58 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. database=""
  4. from_table=""
  5. dest_table=""
  6. batch_size=5000
  7. last_id=""
  8. user=""
  9. pwd=""
  10.  
  11. i=0
  12. while [ true ]
  13. do
  14. t=$(( i*batch_size ))
  15. echo "last_id:$last_id $i $t"
  16. sql="REPLACE INTO ${database}.$dest_table SELECT * FROM ${database}.${from_table} where id > $last_id LIMIT ${batch_size}"
  17. echo $sql
  18. date
  19. mysql -u${user} -p${pwd} -e "$sql"
  20. new_id=`mysql -u${user} -p${pwd} -s -N -e "SELECT id FROM ${database}.${from_table} where id > $last_id LIMIT ${batch_size},1"`
  21. if [ -z $new_id ]
  22. then
  23. echo "done."
  24. break
  25. fi
  26. last_id=$new_id
  27. i=$(( i+1 ))
  28. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement