有没有一种方法可以在aws mysql/aurora上运行引用sql远程文件的远程shell脚本

jhdbpxl9  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(264)

我正在尝试在aws mysql数据库上运行init脚本,我已经能够在mysql的本地示例上运行相同的脚本,但在远程示例上尝试时却不行。这是我从包含shell脚本和sql资源文件的目录运行的命令:
mysql-u user-p-h endpoint123.us-east-1.rds.amazonaws.com-p 3306<创建\数据库.sh
输入我的密码后,出现以下错误:
第15行出现错误1064(42000):您的sql语法有错误;查看与mysql服务器版本相对应的手册,以获得在[行引用sql文件]附近使用的正确语法
基本上,脚本引用本地sql文件,这些文件也是完成安装所必需的。据我所知,不可能将这些文件复制到aws rds机器上。有没有办法解决这个问题,这样shell脚本就可以正常运行了?通过复制文件还是远程运行shell脚本?提前谢谢!

x6492ojm

x6492ojm1#

看起来您想将shell脚本的输出输入到mysql。您使用的语法是用于执行mysql(sql)脚本,而不是shell脚本的输出。你需要这样做:

./script.sh | mysql -u abc -p -e

或者分两个阶段:

./script.sh > out.sql  // To verify that the generated statements are correct
mysql -u abc -p -e < sql

相关问题