【Oracle小技巧】手把手教你玩转SQL Plus命令行,kafka容器化技术

【Oracle小技巧】手把手教你玩转SQL Plus命令行,kafka容器化技术,第1张

【Oracle小技巧】手把手教你玩转SQL Plus命令行,kafka容器化技术

##上传对应主机版本iso文件

scp rhel-server-7.9-x86_64-dvd.iso [email protected]:/soft

##挂载系统iso镜像源

mount -o loop /soft/rhel-server-7.9-x86_64-dvd.iso /mnt

##配置yum镜像源

mv /etc/yum.repos.d/* /tmp/

echo “[local]” >> /etc/yum.repos.d/local.repo

echo “name = local” >> /etc/yum.repos.d/local.repo

echo “baseurl = file:///mnt/” >> /etc/yum.repos.d/local.repo

echo “enabled = 1” >> /etc/yum.repos.d/local.repo

echo “gpgcheck = 0” >> /etc/yum.repos.d/local.repo

通过以上步骤,我们已经成功挂载系统镜像,可以开始安装redline。

2、安装readline依赖包

yum install -y readline*

  • 如果没有系统ISO镜像源,也可以直接在上直接下载readline安装包进行安装。

下载readline包:

wget -c ftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz

上传安装包:

scp readline-6.2.tar.gz [email protected]:/soft

解压安装:

tar -zxvf readline-6.2.tar.gz

cd readline-6.2

./configure && make && make install

3、rlwrap安装

tar -xvf rlwrap-0.42.tar.gz

cd rlwrap-0.42

./configure && make && make install

4、配置环境变量

  • 为避免每次都需要输入rlwrap来调用命令,我们通过alias别名来配置环境变量实现。

##配置oracle用户环境变量

cat <>/home/oracle/.bash_profile

alias sqlplus=‘rlwrap sqlplus’

alias rman=‘rlwrap rman’

alias lsnrctl=‘rlwrap lsnrctl’

alias asmcmd=‘rlwrap asmcmd’

alias adrci=‘rlwrap adrci’

alias ggsci=‘rlwrap ggsci’

alias dgmgrl=‘rlwrap dgmgrl’

EOF

##环境变量生效

exit

su - oracle

至此,rlwrap工具就配置完成啦!

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

2 优化输出格式 glogin.sql


SQL*Plus 在启动时会自动运行脚本:glogin.sql 。

  • glogin.sql 存放在目录$ORACLE_HOME/sqlplus/admin/下。
  • 每当用户启动 SQL_Plus 会话并成功建立 Oracle 数据库连接时,SQL_Plus 就会执行此脚本。
  • 该脚本可以写入在 SQL*Plus 脚本中的任何内容,例如系统变量设置或 DBA 想要实现的其他全局设置。

1、未做配置时,默认如下:

此时,我登录SQL*PLUS并执行sql查询,看一下输出结果格式。

演示:未配置glogin.sql时,查询结果输出:

可以看到,查询结果格式很乱,而且连进去之后也看不到当前实例名和用户名。

2、配置glogin.sql

cat <>$ORACLE_HOME/sqlplus/admin/glogin.sql

设置编辑器用vi打开,windows客户端可以换成NotePad

define _editor=vi

–设置dbms_output输出缓冲区大小

set serveroutput on size 1000000

–设置输出格式

set long 200

set linesize 500

set pagesize 9999

–去除重定向输出每行拖尾空格

set trimspool on

–设置name列长

col Name format a80

–查询当前实例名

set termout off

col global_name new_value gname

define gname=idle

column global_name new_value gname

select lower(user) || ‘@’ || substr( global_name, 1, decode( dot, 0,

length(global_name), dot-1) ) global_name

from (select global_name, instr(global_name,’.’) dot from global_name );

set sqlprompt '&gname _DATE> ’

–设置session时间格式

ALTER SESSION SET nls_date_format = ‘HH24:MI:SS’;

set termout on

EOF

演示:配置完glogin.sql时,查询结果输出:

通过以上配置,SQL*PLUS连接后,明显输出格式更加好看,显示更加人性化。具体配置可根据个人常用进行配置,比如可以将查询表空间使用率配置进去,每次打开都可以看到表空间使用率,防止数据文件撑爆。

–查询表空间使用率

col TABLESPACE_NAME for a20

select tbs_used_info.tablespace_name,

tbs_used_info.alloc_mb,

tbs_used_info.used_mb,

tbs_used_info.max_mb,

tbs_used_info.free_of_max_mb,

tbs_used_info.used_of_max || ‘%’ used_of_max_pct

from (select a.tablespace_name,

round(a.bytes_alloc / 1024 / 1024) alloc_mb,

round((a.bytes_alloc - nvl(b.bytes_free,

0)) / 1024 / 1024) used_mb,

round((a.bytes_alloc - nvl(b.bytes_free,

0)) * 100 / a.maxbytes) used_of_max,

round((a.maxbytes - a.bytes_alloc + nvl(b.bytes_free,

0)) / 1048576) free_of_max_mb,

round(a.maxbytes / 1048576) max_mb

from (select f.tablespace_name,

sum(f.bytes) bytes_alloc,

sum(decode(f.autoextensible,

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5652917.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存