Linux shell操作mysql数据库详解

在shell开发中,很多时候我们需要操作mysql数据库(比如:查询数据、导出数据等),但是我们又无法进入mysql命令行的环境,就需要在shell环境中模拟mysql的环境,使用mysql相关命令,本文总结几种shell操作mysql的方法,供大家参考。

方案1

 代码如下 复制代码

mysql -uuser -ppasswd -e "insert user values(...)"

优点:语句简单
缺点:支持的sql相对简单

方案2

新建一个shell脚本,格式如下:

 代码如下 复制代码

#!/bin/bash
mysql -u* -h* -p* <<EOF
    Your SQL script.
EOF

例如:

 代码如下 复制代码

#!/bin/bash
mysql -uroot  -ppassword <<EOF
   use chbdb;
   CREATE TABLE user (
  id varchar(36) NOT NULL,
  username varchar(50) NOT NULL,
  password varchar(50) NOT NULL,
  createdate date NOT NULL,
  age int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
EOF

缺点:

1> 表名、字段不能使用单引号,需要修改原有sql语句

方案3

准备一个sql脚本,如update.sql,然后执行如下命令:

 代码如下 复制代码

mysql -uroot -ppassword < update.sql

方案4,更新数据库

 代码如下 复制代码

#shell mysql

****************************************

#!/bin/bash

olname=erik ##旧值,也就是要替换掉的值

nwname=erik ##新值,也就是要替换为的值

domain=@set-china.net ##后缀,此处是用来操作邮件的,其它用途可以不要或替换成其它

mysql -u root -p password <

##操作数据库的开始,此处输入用户名及密码,<

##<

use extmail;

show tables;

update alias set goto=REPLACE(goto,'$olname','$nwname$domain');

EOF

exit 0;

****************************************

##语句少的情况下可以如下使用

#!/bin/bash

mysql -u root -p password -e "use mysql;select * from user(SQL语句)";

exit 0;

时间: 2024-10-06 19:11:13

Linux shell操作mysql数据库详解的相关文章

Linux shell操作mysql数据库深入解析_unix linux

在shell开发中,很多时候我们需要操作mysql数据库(比如:查询数据.导出数据等),但是我们又无法进入mysql命令行的环境,就需要在shell环境中模拟mysql的环境,使用mysql相关命令,本文总结几种shell操作mysql的方法,供大家参考. 方案1 复制代码 代码如下: mysql -uuser -ppasswd -e"insert LogTable values(...)"  优点:语句简单缺点:支持的sql相对简单 方案2准备一个sql脚本,名字为update.sq

Linux 自动备份oracle数据库详解_oracle

Linux 自动备份oracle数据: 曾经有个同事,来回操作开发和生产的数据库,结果误删了生产的数据库,那种心情我想不是一般人能理解的,虽然说oracle可以有方法还原,但并不是彻底的. 所以,在工作中,不管是开发还是维护,备份数据库是非常有必要. 简单实用的晚间自动备份数据库小案例 步骤一.创建备份脚本,暂且命名为orabak.sh #路径名,指定备份的路径 FILEPATH = /oracle/orabak #根据指定日期格式,定义备份数据库文件名 FILENAME = `date + %

Linux配置MySQL数据库详解

Linux系统下如何配置安装MySQL数据库,下面所用的distribution是Centos5.8. 1. yum安装 yum install mysql* 为了确保过程不出问题,我们用mysql*把相关的都装上 2. Linux系统有个好处就是它可以自动为我们装好mysql不像windows里要自己手动配置:上面装完后有如下提示: 3. 安装完后重启MySQL服务,可能会重启失败.出现错误 Linux系统下启动MySQL报错:Neither host 'localhost.localdoma

PHP操作mysql函数详解,mysql和php交互函数_php基础

1. 建立和关闭连接 1) mysql_connect() resource mysql_connect([string hostname [:port][:/path/to/socket][,string username] [,string password]]) 所有参数都是可选的 举例: @mysql_connect("localhost", "user", "password") or die("Could not conne

VPS中安装配置linux+nginx+php+mysql环境详解(1/2)

vps系统CentOS5.2 添加一个常用帐号 VPS所在地 量子数据 http://www.111cn.net useradd lrenwang passwd lrenwang -------------------------------------------------------------------------------- 一 安装准备关闭防火墙 service iptables stop 关闭 SELINUX, cp 命令直接覆盖,不需要提示 sed -i "s/SELINUX

详解spring开发_JDBC操作MySQL数据库_java

本文介绍spring开发_JDBC操作MySQL数据库,具体如下: 项目结构: 数据库表: /spring_1100_spring+jdbc/src/com/b510/bean/Person.java package com.b510.bean; /** * 普通的javaBean类Person * * @author Hongten * */ public class Person { /** * id号 */ private int id; /** * 姓名 */ private Strin

详解PHP操作mysql数据库

操作数据库是动态网页编程的基础,本文为你详细介绍一下php如何操作mysql数据库 1. 建立和关闭连接 1) mysql_connect()      resource mysql_connect([string hostname [:port][:/path/to/socket][,string username] [,string password]])      所有参数都是可选的      举例:      @mysql_connect("localhost", "

linux系统下hosts文件详解及配置_linux shell

hosts文件 hosts -- the static table lookup for host name(主机名查询静态表). hosts文件是Linux系统上一个负责ip地址与域名快速解析的文件,以ascii格式保存在/etc/目录下.hosts文件包含了ip地址与主机名之间的映射,还包括主机的别名.在没有域名解析服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的ip地址,否则就需要使用dns服务程序来解决.通过可以将常用的域名和ip地址映射加入到hosts文件中

关于shell脚本操作mysql数据库的问题

问题描述 关于shell脚本操作mysql数据库的问题 hi我写了一个将log文件导入数据库的脚本,可一直报错,不知道啥原因,如果是做查询就没问题 报错如下: 解决方案 http://www.2cto.com/database/201306/220570.html 解决方案二: #!/bin/shmysql?-u?root?-h?localhost?-pYourPassword?CREATE?DATABASE?DBnameUSE?DBnameCREATE?TABLE?TBname?(name?c