linux使用脚本自动连接数据库
2015-09-12 16:14
218 查看
脚本名: mtest1.sh
运行脚本时会让用户输入密码:
这样对于非交互脚本来说并不够好。-p命令行参数导致Mysql暂停下来并要求用户输入密码,当然,你也可以将密码放在密令行上来解决:
注意,这时-p和密码必须连起来,否则会出错。
这时运行就可以直接进入数据库了。
但这并不是一个好办法,任何能访问脚本的人都会看到数据库的用户帐号和密码。
要解决这个问题,你可以使用MYSQL程序的一个特殊配置文件。MYSQL程序使用my.cnf文件来读取特殊的启动命令和设置。其中一项设置是由该游湖账户发起的MYSQL会话的默认密码。
要在这个文件中设置默认密码,可以加入下面内容
再用chmod命令来限制my.conf的文件访问 chmod 400 my.cnf ,这样就只有你可以看到他
接下来就可以使用脚本来操纵数据库了。
脚本名: mtest3.sh
运行脚本 sh mtest3.sh
输出:
#!/bin/bash # test connecting to the Mysql server MYSQL=`which mysql` $MYSQL test -u root -p
运行脚本时会让用户输入密码:
这样对于非交互脚本来说并不够好。-p命令行参数导致Mysql暂停下来并要求用户输入密码,当然,你也可以将密码放在密令行上来解决:
$MYSQL test -u root -p123456
注意,这时-p和密码必须连起来,否则会出错。
这时运行就可以直接进入数据库了。
但这并不是一个好办法,任何能访问脚本的人都会看到数据库的用户帐号和密码。
要解决这个问题,你可以使用MYSQL程序的一个特殊配置文件。MYSQL程序使用my.cnf文件来读取特殊的启动命令和设置。其中一项设置是由该游湖账户发起的MYSQL会话的默认密码。
要在这个文件中设置默认密码,可以加入下面内容
[client] password=123456
再用chmod命令来限制my.conf的文件访问 chmod 400 my.cnf ,这样就只有你可以看到他
接下来就可以使用脚本来操纵数据库了。
脚本名: mtest3.sh
#/bin/bash # send a command to the MySQL server MYSQL=`which mysql` $MYSQL test -u root -e ' select * from employees where salary > 4000;'
运行脚本 sh mtest3.sh
输出:
相关文章推荐
- Centos6.x/7.x LNMP 环境安装常见错误集锦
- centos 启动出现 UNEXPECTED INCONSISTENCY RUN fsck MANUALLY
- Linux 学习:find命令习题
- linux下如何挂载光驱
- “TI门外汉”的觉醒~~
- Linux 学习:文件查找的使用
- VMWare下linux安装及中文语言包安装详细步骤
- Centos 6.x/7.x yum安装php5.6.X(最新版)
- 鸟哥的Linux私房菜5.1部分笔记:linux注销、x window与命令行模式的切换(新手接触linux)
- linux常用命令-关机重启
- linux内核中断之看门狗
- Linux内核笔记——内存管理之块内存分配
- Linux 系统安全 及 lnmp 安装
- linux 学习笔记之权限管理命令
- linux学习笔记之文件搜索命令
- linux 学习笔记之文件的压缩和解压
- linux 学习之帮助命名
- 个人学习笔记---linux原子操作的实现原理
- Linux下彻底卸载mysql数据库
- centos安装git客户端以及常用指令