通用的跨平台sql命令行客户端sqlshell简明使用指南
windows服务器上没有sql server的gui,linux服务器上没有sql server命令行客户端。sql shell是一个通用的sql命令行客户端。 可以使用sqlshell来执行sql,跨语言,跨平台。
https://github.com/bmc/sqlshell
用法总结如下。
##1.下载sqlshell,下载mssql driver,命令行安装:
wget https://github.com/downloads/bmc/sqlshell/sqlshell-0.8.1-installer.jar
java -jar sqlshell-0.8.1-installer.jar
解压以后, 下载sqljdbc4-2.0.jar,放到lib目录下,这样sqlshell会自动加载driver:
wget http://www.java2s.com/Code/JarDownload/sqljdbc4/sqljdbc4-2.0.jar.zip
unzip sqljdbc4-2.0.jar.zip
mv sqljdbc4-2.0.jar lib
##2.配置config文件: mkdir -p ~/.sqlshell/ vi ~/.sqlshell/config , 内容如下:
[drivers]
# Driver aliases.
postgresql = org.postgresql.Driver
postgres = org.postgresql.Driver
mysql = com.mysql.jdbc.Driver
sqlite = org.sqlite.JDBC
sqlite3 = org.sqlite.JDBC
oracle = oracle.jdbc.driver.OracleDriver
access = sun.jdbc.odbc.JdbcOdbcDriver
mssql = com.microsoft.sqlserver.jdbc.SQLServerDriver
[db_mydb] aliases=mssql url=jdbc:sqlserver://127.0.0.1:1453;DatabaseName=demo-db driver=com.microsoft.sqlserver.jdbc.SQLServerDriver user=Dianping_API password=xxxx
##3.指定配置文件,运行sqlshell,连接mydb:
bin/sqlshell -c ~/.sqlshell/config mydb
##4.可以在交互shell中运行命令,如:
sqlshell> select top 1 * from DP_AWKeyword; Execution time: 0.2 seconds Retrieval time: 0.12 seconds 1 row returned.
KID AWID Keyword AdType Power HasNotified NotifyDate Channel Category Region Priority SourceType
1 341 徐汇区火锅 20 2 false NULL NULL NULL NULL NULL 0