我正在运行bash文件,以便在每日bases上进行Mongo转储。但是在本地目录中,我正在运行一个连接到服务器终端的bash文件。在服务器终端中,我正在运行另一个进行Mongo转储的文件。
但是是否可以创建一个连接到MongoDB服务器终端并在服务器上运行命令的文件。
我尝试了很多命令,但是无法使用一个bash文件在服务器终端上运行命令,当服务器终端打开时,左边的命令不会执行。
是否可以在服务器上执行一个bash文件并执行服务器命令..?
使用以下命令远程连接到数据库:
mongo --username username --password secretstuff --host YOURSERVERIP --port 28015
然后,您可以通过在bash脚本中包含您可以从任何位置运行的相关命令(包括上述命令)来自动执行此操作。
为了解决上述问题,Matias Barrios的答案似乎对我来说是正确的。您不在服务器上使用脚本,而是使用本地计算机上连接到服务器服务并管理它们的工具。
不过,要在远程服务器上执行脚本,可以使用ssh。在您的情况下,这不是正确的解决方案,但请回答标题中的问题。
ssh myuser@MongoServer ./script.sh param1
这可以在本地脚本中使用,并在服务器MongoServer上执行script.sh(使用param1和),具有用户myuser的系统特权。
事先,不要忘记避免密码请求
ssh-copy-id myuser@MongoServer
这会将您的ssh公钥复制到MongoServer的myuser目录中