Linux下的mysql学习笔记

一:mysql中一些简单的指令


1. mysql  –u  root  // 以root用户进入数据库

2. show  databases;  // 显示当前数据库


3. use  mysql;  // 进入mysql数据库

4. show  tables;  // 显示mysql数据库中的表

5. create  database  nana;  // 创建一个叫做nana的数据库

6. mysql  nana  –u  root  // 以root用户进入nana数据库,必须以root用户进入是因为只有root用户可以创建表格。

7. create table employees (
-> empid int not null,
-> lastname varchar(30),
-> firstname varchar(30),
-> salary float,
-> primary key (empid));  // 创建表格


8. insert  into  employees  values(1, ‘ blum’ , ‘ rich’ , 25000.00);  // 插入数据

9. delete from employees where empid=2; //删除数据

10. select * from employees; // 查询数据

你可以用一个或多个修饰符来定义数据库服务器如何返回查询要找的数据,以下是三个常用的修饰符:

 Where :显示符合特定条件的数据行子集。

 Order by:以指定顺序显示数据行。

 Limit:只显示数据行的一个子集。 

 Where子句是最常用的select命令修饰符。它允许你指定条件来过滤结果中的数据。



二、 在shell脚本中简单地使用数据库


1. 连接到数据库

要连接到数据库,必须在shell脚本中利用mysql程序。


2. 查找客户端程序

[[email protected] bin]# which mysql
/usr/local/bin/mysql

然后给它一个环境变量,例如

MYSQL=`which mysql`


3. 登陆到服务器,向服务器发送命令

[[email protected] mysql]$ vi test1

#!/bin/bash 

#test connecting to the mysql server

MYSQL=`which mysql`

$MYSQL nana -u root -e 'select * from employees'


4. 使用文件重定向发送多条sql命令

[[email protected] mysql]$ vi test2 

#!/bin/bash

#sendingmultiple commands to mysql

MYSQL=`which mysql`

$MYSQL nana-u root <<EOF

showtables;

select *from employees where salary>250;

EOF

当你使用重定向输入方法时,mysql程序改变了默认的输出风格。

Mysql程序检测到了输入是重定向过来的,所以它只返回了原始数据而不是在数据两边加上ASCII符号框。这非常便于提取单独数据元素。


5. 提取数据库中的数据

[[email protected]]$ vi test5 

#!/bin/bash

#redirectingSQL output to a variable 

MYSQL=`which mysql` 

dbs=`$MYSQL nana -u root -Bse 'show databases' `

for db in$dbs

do

       echo $db

done