一、在bclinux Euler 21.10 安装oracle19c客户端 (为了使用sqlplus 、expdp、impdp、sqlldr等指令)
#环境和说明
系统:BigCloud Enterprise Linux For Euler 21.10 LTS
为了使用sqlplus 、expdp、impdp、sqlldr等指令。 下面是安装步骤 (此方法也适用于centos7.9)
yum install libnsl -yrpm -ivh oracle-instantclient19.20-basic-19.20.0.0.0-1.x86_64.rpm
rpm -ivh oracle-instantclient19.20-devel-19.20.0.0.0-1.x86_64.rpm
rpm -ivh oracle-instantclient19.20-jdbc-19.20.0.0.0-1.x86_64.rpm
rpm -ivh oracle-instantclient19.20-odbc-19.20.0.0.0-1.x86_64.rpm
rpm -ivh oracle-instantclient19.20-sqlplus-19.20.0.0.0-1.x86_64.rpm
rpm -ivh oracle-instantclient19.20-tools-19.20.0.0.0-1.x86_64.rpm #配置环境变量
[root@gxyd-iom-app1-6 /home/nwom/oracle]# vim /etc/profile
export PATH=$PATH:/usr/lib/oracle/19.20/client64/binsource /etc/profile#参考博客:
http://www.taodudu.cc/news/show-3306490.html?action=onClick
注意事项:无外网/离线环境下,所需的bclinux euler的rpm包。
#4GB的bclinux euler镜像ISO包,作为本地yum源,是没有libnsl的。
#缺libnsl依赖,有的操作是将原本的 xxx.oe1. 换成了 libnsl-2.28-101.el8.x86_64[root@localhost cache]# cat /etc/yum.conf
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False
#保存yum下载的包
keepcache=1###
[root@localhost oracle-instanceClient-19c]# rpm -ivh oracle-instantclient19.20-basic-19.20.0.0.0-1.x86_64.rpm
错误:依赖检测失败:libnsl.so.1()(64bit) 被 oracle-instantclient19.20-basic-19.20.0.0.0-1.x86_64 需要####安装依赖
[root@localhost oracle-instanceClient-19c]# yum install libnsl
上次元数据过期检查:0:07:18 前,执行于 2024年05月04日 星期六 18时42分56秒。
依赖关系解决。
===========================================================================================================================================================Package Architecture Version Repository Size
===========================================================================================================================================================
安装:libnsl x86_64 2.28-99.oe1.bclinux update 42 k
升级:glibc x86_64 2.28-99.oe1.bclinux update 3.2 Mglibc-common x86_64 2.28-99.oe1.bclinux update 26 Mglibc-devel x86_64 2.28-99.oe1.bclinux update 2.8 M事务概要
===========================================================================================================================================================
安装 1 软件包
升级 3 软件包总下载:32 M
确定吗?[y/N]: y
下载软件包:
(1/4): libnsl-2.28-99.oe1.bclinux.x86_64.rpm 107 kB/s | 42 kB 00:00
(2/4): glibc-2.28-99.oe1.bclinux.x86_64.rpm 3.2 MB/s | 3.2 MB 00:00
(3/4): glibc-common-2.28-99.oe1.bclinux.x86_64.rpm 6.4 MB/s | 26 MB 00:04
(4/4): glibc-devel-2.28-99.oe1.bclinux.x86_64.rpm 761 kB/s | 2.8 MB 00:03 已升级:glibc-2.28-99.oe1.bclinux.x86_64 glibc-common-2.28-99.oe1.bclinux.x86_64 glibc-devel-2.28-99.oe1.bclinux.x86_64 已安装:libnsl-2.28-99.oe1.bclinux.x86_64 完毕!###缓存下来的包
[root@localhost cache]# pwd
/var/cache
[root@localhost cache]# find /var/cache -name *.rpm
/var/cache/dnf/update-02ebc2c230a599d6/packages/glibc-devel-2.28-99.oe1.bclinux.x86_64.rpm
/var/cache/dnf/update-02ebc2c230a599d6/packages/glibc-common-2.28-99.oe1.bclinux.x86_64.rpm
/var/cache/dnf/update-02ebc2c230a599d6/packages/libnsl-2.28-99.oe1.bclinux.x86_64.rpm
/var/cache/dnf/update-02ebc2c230a599d6/packages/glibc-2.28-99.oe1.bclinux.x86_64.rpm#离线下载rpm包地址
https://mirrors.cmecloud.cn/bclinux/oe21.10/update/x86_64/Packages/
https://mirrors.cmecloud.cn/bclinux/oe21.10/update/x86_64/Packages/glibc-devel-2.28-99.oe1.bclinux.x86_64.rpm
https://mirrors.cmecloud.cn/bclinux/oe21.10/update/x86_64/Packages/glibc-common-2.28-99.oe1.bclinux.x86_64.rpm
https://mirrors.cmecloud.cn/bclinux/oe21.10/update/x86_64/Packages/glibc-2.28-99.oe1.bclinux.x86_64.rpm
https://mirrors.cmecloud.cn/bclinux/oe21.10/update/x86_64/Packages/libnsl-2.28-99.oe1.bclinux.x86_64.rpm
二、shell和sftp上传过去1小时文件随记
#文件的示例:
-rw-r----- 1 test test 59M May 10 08:05 NR_xx_20240510073000.tar.gz
-rw-r----- 1 test test 62M May 10 08:20 NR_xx_20240510074500.tar.gz
-rw-r----- 1 test test 65M May 10 08:35 NR_xx_20240510080000.tar.gz
-rw-r----- 1 test test 66M May 10 08:50 NR_xx_20240510081500.tar.gz-rw-r----- 1 test test 68M May 10 09:05 NR_xx_20240510083000.tar.gz
-rw-r----- 1 test test 68M May 10 09:20 NR_xx_20240510084500.tar.gz
-rw-r----- 1 test test 71M May 10 09:35 NR_xx_20240510090000.tar.gz
-rw-r----- 1 test test 72M May 10 09:50 NR_xx_20240510091500.tar.gz
#推送过去1小时前,所生成的文件到sftp端
#定时任务执行 35 * * * * bash /shellDir/pushFilesXX.sh#!/bin/bash
if [ $# != 2 ];then
statis_date=`date -d "-1 hour" +%Y%m%d`
statis_date1=`date -d "-1 hour" +%H`
elsestatis_date="${1}"statis_date1="${2}"
fi
statis_date=${statis_date}#SFTP配置
SFTP_HOSTNAME=10.xx.xx.xx
SFTP_PORT=22
SFTP_USERNAME=xx
SFTP_PASSWORD='xx'
SFTP_DIR=/opt/MRO
csv_dir=/data1/input/10.xx.xx.xx#推送至SFTP
lftp -u ${SFTP_USERNAME},${SFTP_PASSWORD} sftp://${SFTP_HOSTNAME}:${SFTP_PORT} <<EOFlcd ${csv_dir}/${statis_date}/bak/mkdir ${SFTP_DIR}/${statis_date}
cd ${SFTP_DIR}/${statis_date}
mput NR_*_${statis_date}${statis_date1}*.tar.gzbye
EOFecho -e " finish $(date +%F_%T)" >> record.txt
#推送全部文件到sftp端#!/bin/bash
#SFTP配置
SFTP_HOSTNAME=10.xx.xx.xx
SFTP_PORT=22
SFTP_USERNAME=xx
SFTP_PASSWORD='xx'
SFTP_DIR=/opt/MRO
csv_dir=/data1/input/10.xx.xx.x1#推送至SFTP
lftp -u ${SFTP_USERNAME},${SFTP_PASSWORD} sftp://${SFTP_HOSTNAME}:${SFTP_PORT} <<EOFlcd ${csv_dir}/20240508/bak/
mkdir ${SFTP_DIR}/20240508
cd ${SFTP_DIR}/20240508
mput *bye
EOF
三、Linux下 cp/mv大文件杂谈/随记
环境信息: bclinux euler 21.10
20240430.tar.gz ~ 20240560.tar.gz 7个文件,每个文件大小300gb,总大小2.1TB
RAID 10 , 磁盘 /data1到/data10 都是可用6.9TB
不管是cp或mv 都会吃内存 ,主要体现在 buff/cache
#如果/data1-/data10是在10个不同的硬件磁盘上,那么写入目标的速度没影响。但是,会读10次原文件,所以,你应该用tee命令,读一次源文件之后,直接从内存拷贝源文件的内容写入目标文件
I/O有瓶颈
同时开7个cp任务和 文件依次mv 的传输速度 ,他俩的速度都是在 250M/s左右,传完2.1TB的文件大概总耗时142分钟。 (4秒传输1GB)