当前位置: 技术问答>linux和unix
shell文件中执行命令和在提示符下执行有什么区别
来源: 互联网 发布时间:2015-10-02
本文导语: 这样一个命令 /usr/local/mysql/bin/mysqldump -uuser -ppass -r/data/backup/dbname.dump dbname 在提示符状态下可以正确执行 写道一个shell文件中执行,提示如下错误 ' when selecting the databasep: Got error: 1044: Access denied for user: 'use...
这样一个命令
/usr/local/mysql/bin/mysqldump -uuser -ppass -r/data/backup/dbname.dump dbname
在提示符状态下可以正确执行
写道一个shell文件中执行,提示如下错误
' when selecting the databasep: Got error: 1044: Access denied for user: 'user@localhost' to database 'dbname
请问这是怎么回事,怎么解决
/usr/local/mysql/bin/mysqldump -uuser -ppass -r/data/backup/dbname.dump dbname
在提示符状态下可以正确执行
写道一个shell文件中执行,提示如下错误
' when selecting the databasep: Got error: 1044: Access denied for user: 'user@localhost' to database 'dbname
请问这是怎么回事,怎么解决
|
执行shell和执行命令的是同一个用户吗?可能在shell的时候缺少了一些环境变量
|
看看你的shell是什么的,
然后在shell文件的头行加上
#!/bin/(你现在在用的shell),比如你现在用的shell是bash,就是这样
#!/bin/bash
然后在shell文件的头行加上
#!/bin/(你现在在用的shell),比如你现在用的shell是bash,就是这样
#!/bin/bash
|
权限不允许,提成权限就可以了
user: 'user@localhost' to database 'dbname
user没有权限操作
user: 'user@localhost' to database 'dbname
user没有权限操作
|
你的shell文件有没有把它设置可以执行的权限呢?
就是有没有
chmod +x backup.sh
就是有没有
chmod +x backup.sh