导航:首页 > 操作系统 > linux怎么执行sql

linux怎么执行sql

发布时间:2023-03-16 03:48:54

‘壹’ linux系统下怎么在终端运行sql语句

主要有以下几种方法:
1、将SQL语句直接嵌入到shell脚本文件中
代码如下:

--演示环境
[root@SZDB ~]# more /etc/issue
CentOS release 5.9 (Final)
Kernel \r on an \m
root@localhost[(none)]> show variables like 'version';
+---------------+------------+
| Variable_name | Value |
+---------------+------------+
| version | 5.6.12-log |
+---------------+------------+

[root@SZDB ~]# more shell_call_sql1.sh
#!/bin/bash
# Define log
TIMESTAMP=`date +%Y%m%d%H%M%S`
LOG=call_sql_${TIMESTAMP}.log
echo "Start execute sql statement at `date`." >>${LOG}

# execute sql stat
mysql -uroot -p123456 -e "
tee /tmp/temp.log
drop database if exists tempdb;
create database tempdb;
use tempdb
create table if not exists tb_tmp(id smallint,val varchar(20));
insert into tb_tmp values (1,'jack'),(2,'robin'),(3,'mark');
select * from tb_tmp;
notee
quit"

echo -e "\n">>${LOG}
echo "below is output result.">>${LOG}
cat /tmp/temp.log>>${LOG}
echo "script executed successful.">>${LOG}
exit;

[root@SZDB ~]# ./shell_call_sql1.sh
Logging to file '/tmp/temp.log'
+------+-------+
| id | val |
+------+-------+
| 1 | jack |
| 2 | robin |
| 3 | mark |
+------+-------+
Outfile disabled.

2、命令行调用单独的SQL文件

代码如下:

[root@SZDB ~]# more temp.sql
tee /tmp/temp.log
drop database if exists tempdb;
create database tempdb;
use tempdb
create table if not exists tb_tmp(id smallint,val varchar(20));
insert into tb_tmp values (1,'jack'),(2,'robin'),(3,'mark');
select * from tb_tmp;
notee
[root@SZDB ~]# mysql -uroot -p123456 -e "source /root/temp.sql"
Logging to file '/tmp/temp.log'
+------+-------+
| id | val |
+------+-------+
| 1 | jack |
| 2 | robin |
| 3 | mark |
+------+-------+
Outfile disabled.

3、使用管道符调用SQL文件
代码如下:

[root@SZDB ~]# mysql -uroot -p123456 </root/temp.sql
Logging to file '/tmp/temp.log'
id val
1 jack
2 robin
3 mark
Outfile disabled.
#使用管道符调用SQL文件以及输出日志
[root@SZDB ~]# mysql -uroot -p123456 </root/temp.sql >/tmp/temp.log
[root@SZDB ~]# more /tmp/temp.log
Logging to file '/tmp/temp.log'
id val
1 jack
2 robin
3 mark
Outfile disabled.

4、shell脚本中MySQL提示符下调用SQL

代码如下:

[root@SZDB ~]# more shell_call_sql2.sh
#!/bin/bash
mysql -uroot -p123456 <<EOF
source /root/temp.sql;
select current_date();
delete from tempdb.tb_tmp where id=3;
select * from tempdb.tb_tmp where id=2;
EOF
exit;
[root@SZDB ~]# ./shell_call_sql2.sh
Logging to file '/tmp/temp.log'
id val
1 jack
2 robin
3 mark
Outfile disabled.
current_date()
2014-10-14
id val
2 robin

5、shell脚本中变量输入与输出

代码如下:

[root@SZDB ~]# more shell_call_sql3.sh
#!/bin/bash
cmd="select count(*) from tempdb.tb_tmp"
cnt=$(mysql -uroot -p123456 -s -e "${cmd}")
echo "Current count is : ${cnt}"
exit
[root@SZDB ~]# ./shell_call_sql3.sh
Warning: Using a password on the command line interface can be insecure.
Current count is : 3

[root@SZDB ~]# echo "select count(*) from tempdb.tb_tmp"|mysql -uroot -p123456 -s
3

[root@SZDB ~]# more shell_call_sql4.sh
#!/bin/bash
id=1
cmd="select count(*) from tempdb.tb_tmp where id=${id}"
cnt=$(mysql -uroot -p123456 -s -e "${cmd}")
echo "Current count is : ${cnt}"
exit

[root@SZDB ~]# ./shell_call_sql4.sh
Current count is : 1

‘贰’ linux怎么执行sql文件命令

Linux上执行SQL命令和Windows的cmd执行SQL命令操作是一样的
都是mysql -u root -p 输入密码 进入数据库 后其他操作都是一样的

‘叁’ sql脚本怎么在linux执行

已Oracle为例:
1、当前用户首先切换到Oracle用户下,su oralce
2、登录数据库,sqlplus user/password
3、输入sql脚步,注意脚步结束必须“;”,回车运行。

‘肆’ 如何在linux中执行sql文件

如何在linux中执行sql文件
第一种方法:
在命令行下(未连接数据库),输入 mysql -h localhost -u root -p123456 < F:\hello world\niuzi.sql (注意路径不用加引号的!!) 回车即可.
第二种方法:
在命令行下(已连接数据库,此时的提示符为 mysql> ),输入 source F:\hello world\niuzi.sql (注意路径不用加引号的)
或者 \. F:\hello world\niuzi.sql (注意路径不用加引号的) 回车即可.

‘伍’ linux 怎么执行sql

以下举个例子,在shell下执行SQL命令然后马上回到shell.
其中MYSQL密码和账号都是www

$ mysql -uwww -pwww -hlocalhost -e "show databases;"
+--------------------+
| Database |
+--------------------+
| information_schema |
+--------------------+
$

如果要执行不止一条命令,则可以先写到一个文件中,然后再用输入重定向完成。比如我可以把SQL指令都写到/tmp/sqltest中然后
$ mysql -uwww -pwww -hlocalhost < /tmp/testsql
Database
information_schema
$
#注:为方便,我 testsql 中还是只有一条命令,还是 show databases;

‘陆’ linux下怎么运行sql文件

要看你有没有设数据库bin目录的环境变量如果设置了就直接可以用,如果没设置你就:
1.切换工作目录到mysql(或其他数据库产品)下,用root用户执行
sudo
bin/mysqld_safe
--user
root
&(这个符号表示从后台启动)
2.然后再切换到bin目录下工作
执行./mysql
-u
用户名
-p
3.终端会提示你输入密码

‘柒’ linux下如何运行pl/sql

1,首先去运行perl-v命令查看您的linux系统上面是否安装了perl工具,如果已安装的话,会输出版本号,如果没有安装,则安装perl。

sudo apt-get install perl

阅读全文

与linux怎么执行sql相关的资料

热点内容
数据库查询系统源码 浏览:612
php5314 浏览:352
完美国际安装到哪个文件夹 浏览:664
什么app可以扫一扫做题 浏览:535
程序员编码论坛 浏览:920
淘点是什么app 浏览:656
中国高等植物pdf 浏览:450
51单片机时间 浏览:178
后台如何获取服务器ip 浏览:261
单片机流水灯程序c语言 浏览:230
程序员第二职业挣钱 浏览:235
运行里怎么输入服务器路径 浏览:835
pythonstepwise 浏览:505
刘一男词汇速记指南pdf 浏览:58
php认证级别 浏览:364
方舟编译啥时候推送 浏览:1006
php手机验证码生成 浏览:670
哲学思维pdf 浏览:12
凌达压缩机有限公司招聘 浏览:529
weblogic命令部署 浏览:33