1. 用户改密
passwd app_adm
chage - l app_adm
passwd - x 90 app_adm - > 执行操作后,app_adm用户的密码时间改为90天有效期-- 查看该euser用户过期信息使用chage命令
-- chage的参数包括
-- - m 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-- - M 密码保持有效的最大天数。
-- - W 用户密码到期前,提前收到警告信息的天数。
-- - E 帐号到期的日期。过了这天,此帐号将不可用。
-- - d 上一次更改的日期
-- - i 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
-- - l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期
2. 开机自启
将开机自启脚本加到/ etc/rc. d/rc. loacl
systemctl enable nfs-server
systemctl enable rpcbind
systemctl list-unit-files| grep enabled | grep nfs-server
systemctl list-unit-files| grep enabled | grep rpcbind
3.查找&推送命令
find / home - size + 1M -- 查找 / home 目录下大于 1MB 的文件
find . - name "*.c" -- 将当前目录及其子目录下所有文件后缀为 . c 的文件列出来
grep - irnl "dim_poia_capital_zone" / home/app_adm/etl/Hqlexec/sql -- 查询Linux文件中包含字符的文件名称
ssh - l app_adm 10. 169. 1. 178 -- ssh指定用户访问
scp - P 4588 hdfs@stmg102:/ usr/local/sin. sh / home/administrator -- 以及scp集群间拷贝文件
hdfs dfs - chmod - R 777 / user/hive/warehouse/
hdfs dfs - chown - R hive:hive / user/hive/warehouse/
hdfs dfs - put - f / usr/local/sin. sh / user/hive/warehouse/sin. sh -- 如果文件已存在覆盖
hdfs dfs - get / user/hive/warehouse/sin. sh / usr/local/ -- 如果文件已存在覆盖
4.windows 获取目录下的文件名
dir * . * / B >list. txt
5. 建立软连接
-- 建议软连接
ln - s / usr/local/python3/bin/python3 / usr/bin/python
-- 删除软连接,源文件还在
rm mylink
-- 给当前目录下的所有文件赋权
chmod 766 . / * -- 注意:路径采用Linux的写法(/ ),防止符号转义 * /
6.Linux查看wiondows共享盘的用户名和密码
-- 查看wiondows共享盘的用户名和密码
sudo cat / etc/samba/smb. conf | grep "共享盘名称" -- 配置开机自动挂载的可以查看开机自动挂载
cat / etc/fstab
7. kettle 解决数据库中文乱码
右键编辑spoon. bat 添加 "-Dfile.encoding=UTF-8"
保存重启
8.查看内核版本
-- 查看内核版本
cat / proc/version
-- 查看是x86
uname - m
9.Git
步骤 1:创建 Git 存储库
步骤 2:复制存储库并添加文件
步骤 3:从存储库中提取更改
步骤 4:使用源代码树分支合并更新
10. kettle 文件通配符
. * CRM. * . xml| EMP_. * . xml
11. linux中的环境变量
/ etc/profile :用来设置系统的环境变量,对系统内所有用户生效,source / etc/profile
~/ . bashrc:针对某一个特定的用户,设置环境变量只对该用户自己生效
-- 追加生效
source / etc/profile >> ~/ . bashrc
-- 查看追加
cat / etc/profile >> ~/ . bashrc
12. rpm命令
-- 这个命令可以使rpm 安装时不检查依赖关系
rpm - i software-2. 3. 4. rpm -- nodeps
-- 这个命令可以强制安装rpm包
rpm - ivh software-2. 3. 4. rpm -- force
13. finereport激活码
fd336a2a-4a7e3c38f-6433-d59127605172
14.shell分割字符串并赋值给变量
id=`echo $var | awk - F "=" '{print $2}' `
15. kettle变量
-- job中设置-- 1. job中设置变量 - >2. 下一个转换中[ 获取变量] 组件(客户修改名称以及去空格)- >3. 转换中直接使用${ 变量名称} (范围设置在当前job中有效即可,否则变量有重复则会错误)-- 转换中设置-- 1. 转换中设置变量不能在当前转换中使用(可以读取表中的数据- >进行设置变量)- >2. 在下一个转换中使用[ 获取变量] 组件- >3. 来${ 变量名称} 进行使用 (范围设置在当前job中有效即可,否则变量有重复则会错误)
16. 更新kettle数据库脚本
create table repkettle. r_database_20240424bakup as select * from repkettle. r_database;
update repkettle. r_database tset t. host_name = '10.169.1.228' , t. database_name = 'etltdb' where t. host_name = '10.169.1.42' ;
17.flink资源使用
1. 任务具体的实现和数据规模其中数据规模:读取文件的大小 处理数据的行数2. 并行度窗口大小:窗口越大需要的CPU和内存就越多并行度因子 :不同的并行度因子对应着不同的并行度3. JVM堆大小 JVM堆越大,可以同时运行的线程数就越多。 因此,JVM大小可以调整并发度4. 架构
ngnix->flume->kafka->flink->存储( 采集- 计算- 指标计算)
-- 其中要保证数据丢失问题、重复读取(偏移量)
18.shell脚本调用OracleSQL异常捕获
cmd=`echo "$cmd " | awk '{printf "%s\n", $0}' `
echo "cmd:" $cmd if [ ! ${ cmd} ] ; thenecho "EXECUTION SUCCEEDED" echo $cmd exit 0
else echo "EXECUTION FAILED" echo $cmd exit - 1
fi
19.jdbc双节点配置
jdbc:oracle:thin:@( DESCRIPTION =( ADDRESS_LIST =( ADDRESS = ( PROTOCOL = TCP) ( HOST = 10. 163. 128. 79) ( PORT = 1521) ) ( ADDRESS = ( PROTOCOL = TCP) ( HOST = 10. 163. 128. 80) ( PORT = 1521) ) ( LOAD_BALANCE = yes) ) ( CONNECT_DATA =( SERVER = DEDICATED) ( SERVICE_NAME = etldb) ) )
20. 创建用户及赋权
create user test123 identified by test123;
grant connect , resource to test123;
21.表空间使用情况查询语句
select a. tablespace_name, total, free, total- free used from
( select tablespace_name, sum ( bytes) / 1024 / 1024 total from dba_data_filesgroup by tablespace_name) a,
( select tablespace_name, sum ( bytes) / 1024 / 1024 free from dba_free_spacegroup by tablespace_name) b
where a. tablespace_name= b. tablespace_name;
select segment_name, sum ( bytes) / 1024 / 1024 Mbytese from user_segments where segment_type= 'TABLE' group by segment_name;
ALTER TABLESPACE dc_dw ADD DATAFILE
'D:\oracle\product\10.2.0\oradata\irdcdev\DC_DW1.DBF' SIZE 500 M
AUTOEXTEND ON NEXT 8 G MAXSIZE unlimited;
22. 修改MYSQL密码
mysql
use mysql
update user set password= password( "Ab123456" ) where user = "root" and host= '10.169.1.%' ;
flush privileges ; select host, user , password from user ;
23. 加载csv文件到hive表中
USE database ;
CREATE TABLE table ( ssid int comment 'ssid' , orderid int comment 'orderid'
)
COMMENT 'table comment'
row format delimited fields terminated by ',' STORED AS textfile
location '/data_coffe/ods/dim_channel' ; download[ hdfs:
LOAD DATA local INPATH 'hotel.csv' into table database . table ;
24.MYSQL创建只读用户
CREATE USER 'readonly' @'%' IDENTIFIED BY '123456' ;
CREATE USER 'readonly' @'10.76.2.25' IDENTIFIED BY '123456' ;
CREATE USER 'readonly' @'10.76.2.26' IDENTIFIED BY '123456' ;
GRANT SELECT ON hive. * TO 'readonly' @'%' ;
GRANT SELECT ON hive. * TO 'readonly' @'10.76.2.25' ;
GRANT SELECT ON hive. * TO 'readonly' @'10.76.2.26' ;
FLUSH PRIVILEGES ; 创建只读用户完成;账号:readonly 密码:123456 操作的数据库表:hive. * 指定登录的IP:’% ’(所有)
GRANT [ 权限]
ON [ 库. 表]
TO [ 用户名] @[ IP]
IDENTIFIED BY [ 密码]
25. HIVE元数据乱码操作
alter table COLUMNS_V2 modify column COMMENT varchar ( 256 ) character set utf8
alter table TABLE_PARAMS modify column PARAM_VALUE varchar ( 4000 ) character set utf8
alter table PARTITION_PARAMS modify column PARAM_VALUE varchar ( 4000 ) character set utf8 ;
alter table PARTITION_KEYS modify column PKEY_COMMENT varchar ( 4000 ) character set utf8;
alter table INDEX_PARAMS modify column PARAM_VALUE varchar ( 4000 ) character set utf8; SELECT s. NAME, t. tbl_name, UPPER( g. column_name) AS column_name , g. COMMENT , g. integer_idx, g. type_nameFROM TBLS t, SDS k, COLUMNS_V2 g, DBS sWHERE t. sd_id = k. sd_idAND k. cd_id = g. cd_idand t. DB_ID = s. DB_IDand g. COMMENT like '?%' ORDER BY s. NAME, t. tbl_name, g. integer_idx; SELECT distinct s. NAME, t. tbl_nameFROM TBLS t, SDS k, COLUMNS_V2 g, DBS sWHERE t. sd_id = k. sd_idAND k. cd_id = g. cd_idand t. DB_ID = s. DB_IDand g. COMMENT like '?%' ORDER BY s. NAME, t. tbl_name, g. integer_idx; 1. 修改表注释
alter table 表名 set tblproperties( 'comment' = '注释' ) ; 2. 修改字段注释
alter table 表名 change 旧字段名 新字段名 字段类型 comment '注释' ; 3. 修改分区字段注释,需要在元数据库中执行
update PARTITION_KEYS ps
join TBLS ts on ps. tbl_id = ts. tbl_id
join DBS ds on ts. db_id = ds. db_id
set ps. pkey_comment = '注释'
where lower( ds. name) = '库名' and lower( ts. tbl_name) = '表名' and lower( ps. pkey_name) = '分区字段名' ; STORED AS PARQUET
TBLPROPERTIES ( 'parquet.compression' = 'snappy' ) ; STORED AS TEXTFILE;
SELECT s. NAME, t. tbl_name, UPPER( g. column_name) AS column_name , g. COMMENT , g. integer_idx, g. type_nameFROM TBLS t, SDS k, COLUMNS_V2 g, DBS sWHERE t. sd_id = k. sd_idAND k. cd_id = g. cd_idand t. DB_ID = s. DB_IDand g. COMMENT like '?%' and s. NAME= 'aml' ORDER BY s. NAME, t. tbl_name, g. integer_idx; SELECT s. TBL_NAME, t. PARAM_VALUE from TABLE_PARAMS t , TBLS s
where t. TBL_ID = s. TBL_IDand t. PARAM_KEY= 'comment' order by s. TBL_NAME; update TABLE_PARAMS ps join TBLS ts on ps. tbl_id = ts. tbl_id set ps. PARAM_VALUE = '注释' where ps. PARAM_KEY= 'comment' and ts. TBL_NAME = SELECT d. NAME, s. TBL_NAME, t. PARAM_VALUE from TABLE_PARAMS t , TBLS s, DBS d
where t. TBL_ID = s. TBL_IDand d. DB_ID = s. DB_IDand t. PARAM_KEY= 'comment' and PARAM_VALUE like '%?%' order by s. TBL_NAME
26. excel_to_csv
import pandas as pd
import argparseparser = argparse. ArgumentParser( description= 'manual to this script' )
parser. add_argument( "--input_path" , type = str , required= True )
parser. add_argument( "--output_path" , type = str , required= True )
args = parser. parse_args( )
print ( args. input_path)
print ( args. output_path)