各种数据库shell一键登录的方法
一个小场景
想通过shell 直接执行一些内容. 然后发现通过shell就可以.
所以这里总结一下
1. Oracle
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
/u01/app/oracle/product/19.0.0/dbhome_1/bin/sqlplus username/'password'@ip.xx.xx.xx/oracle_sid
2. SQLServer
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
如果是linux8则使用如下
curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/msprod.repo
yum makecache
yum install mssql-tools -y
/opt/mssql-tools/bin/sqlcmd -S ip.xx.xx.xx -d databasename -U username -P 'password?!'
3.mysql
yum install mysql -y
/usr/bin/mysql -uroot -pxxxxpassword -h ip_xx_xx_xx -P 3306
4.pg数据库
cat > /root/.pgpass <<EOF
10.xx.xx.xx:5432:databasename:username:password
EOF
chmod 0600 /root/.pgpass
后者是在环境变量文件里面进行一下处理
cat >/etc/profile.d/postgresql.sh <<EOF
export PGPASSWORD='password'
EOF
/bin/psql -U username -d databasename -h 10.xx.xx.xx
# 需要注意 环境变量> .pgpass的文件. 如果密码不对必须使用 -W 输入密码才可以.
5. 人大金仓
人大金仓有两种方式:
cat > /root/.kbpass <<EOF
10.xx.xx.xx:54321:databasename:username:password
EOF
chmod 0600 /root/.kbpass
或者是直接使用环境变量
cat >/etc/profile.d/postgresql.sh <<EOF
export KINGBASE_PORT=54321
export KINGBASE_USER=system
export KINGBASE_PASSWORD=123456
export KINGBASE_DATABASE=test
EOF
脚本为:
opt/Kingbase/ES/V8/Server/bin/ksql -U username -p54321 -d databasename -h 10.xx.xx.xx
6. 达梦数据库
/opt/dmdbms/bin/disql usrename/'"password?!"'@10.xx.xx.xx
# 与oracle很接近 如果是非标注你数据库需要后面增加数据库名.
7. 神通数据库
/opt/ShenTong/bin/isql -U username/password -h 10.xx.xx.xx
一个简单方法
国产数据库的 命令行工具都是自包含的
只需要将bin目录和lib目录copy到同架构的其他机器上面
理论上都可以直接用, 不需要手工安装一遍.