求助各位大佬,Mysql如何用命令复制转移视图。
我写了一个脚本。可以复制数据库中每一个表转移到另一个数据库。可是总是有几个表转移不了。后来通过研发部的前辈我了解到,没办法转移的是视图。请问用什么sql语句可以将视图转移到另一个数据库。或者有什么可以整库复制转移(我试了很多网上的方法都行不通)。另外我们的是mysql数据库docker容器my.cnf配置如下
default-character-set=utf8
default-character-set=utf8
back_log=500
wait_timeout=1800
max_connections=1000
max_user_connections=800
default-storage-engine= InnoDB
key_buffer_size=384M
innodb_buffer_pool_size=1024M
init-connect='SET NAMES utf8'
character-set-server = utf8
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
lower_case_table_names=1
collation-server = utf8_unicode_ci
interactive_timeout=7200
max_allowed_packet = 20M
log_timestamps=SYSTEM
log-bin=/var/lib/mysql/mysql-bin
server-id=123454
binlog-format=ROW
脚本如下
#!/bin/bash
#time=`date +%F`
bak=_baka
read -p "请输入要备份的数据库" name
iname=$name$bak
#dd=`docker exec -i mysql mysql -uroot -proot -e "select table_name from information_schema.tables where table_schema='$name';"|grep -Evi "table_name"`
dd=`docker exec -i mysql mysql -uroot -proot -e "use gdxl;show tables" | grep -v "Tables_in_gdxl"`
docker exec -i mysql mysql -uroot -proot -e "CREATE DATABASE IF NOT EXISTS $iname"
for i in $dd
do
#echo $i
#echo "$iname"
docker exec -i mysql mysql -uroot -proot -e "CREATE TABLE $iname.$i LIKE $name.$i;"
docker exec -i mysql mysql -uroot -proot -e "INSERT INTO $iname.$i SELECT * FROM $name.$i;"
if [ $? -eq 0 ];then
echo "$i=ok"
else
echo "$i=no" >> /root/shuju
fi
done
求助各位大佬!!!! 求助大佬教导。同样求助各位给mysql资源资料有关数据库即可。 不懂帮顶 视图是基于表创建的,你可以分2步,先把所有的表创建完,再去创建视图 过来学习了! 梓沐 发表于 2020-5-26 10:22
视图是基于表创建的,你可以分2步,先把所有的表创建完,再去创建视图
谢谢您的指导,但是我不是学数据库的。我只是写脚本的,懂一些命令和shelli脚本。怎么创建视图我也不懂。表都可以转移到新库但是视图怎末转移过去。 求助大佬。d=====( ̄▽ ̄*)b 视图 其实就是一些sql语句的封装 .你没学过数据库的话 感觉不太好理解...你想要mysql资源还是Oracle资源 ?我应该都有存 zbr878458173 发表于 2020-5-26 11:20
视图 其实就是一些sql语句的封装 .你没学过数据库的话 感觉不太好理解...你想要mysql资源还是Oracle资源...
我要的是mysql的。当然你多给我些我也不介意!(*^_^*) 12195525Tom 发表于 2020-5-26 11:23
我要的是mysql的。当然你多给我些我也不介意!(*^_^*)
https://pan.baidu.com/s/15ocrWsdcODC8kA1VCkMaXQ
提取码:57vp
第一个 基础里面
页:
[1]
2