- #!/bin/env bash
- PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
- export PATH
- clear
- rusername=""
- rpasswd=""
- rhost=""
- lusername=""
- lpasswd=""
- lhost="127.0.0.1"
- #连接旧数据库把原来的多个数据库赋值给变量。
- mysqldata=`mysql -h$rhost-u$rusername-p$rpasswd-e"show databases"|grep -vE "mysql|information_schema|performance_schema|Database"`
- #循环把旧的数据库在新的服务器上新建和导入
- for i in ${mysqldata[@]} ; do
- #新建数据库
- mysql -u$lusername -p$lpasswd -e"CREATE DATABASE $i CHARACTER SET utf8"
- #导出数据库后用管道导入数据库
- mysqldump --opt -h$rhost -u$rusername -p$rpasswd $i | mysql -u$lusername -p$lpasswd $i
- #如果需要从本地把数据库导出到远程服务器,远程服务器的数据库只配置为本地访问权限,同时开启的22端口,可以考虑使用以下命令
- #mysqldump --opt -h$lhost -u$lusername -p$lpasswd $i |ssh -C user@rhost "mysql -u$rusername -p$rpasswd $i"
- done
- #该片段来自于http://www.codesnippet.cn/detail/111120137050.html
来源: http://www.codesnippet.cn/detail/111120137050.html