⑴ 关于SQLserver 存储过程 如何切割一个字符串 转化为数组
Create Function [dbo].[Split](@Sql varchar(8000),@Splits varchar(10))
returns @temp Table (a varchar(100))
As
Begin
Declare @i Int
Set @Sql = RTrim(LTrim(@Sql))
Set @i = CharIndex(@Splits,@Sql)
While @i >= 1
Begin
Insert @temp Values(Left(@Sql,@i-1))
Set @Sql = SubString(@Sql,@i+1,Len(@Sql)-@i)
Set @i = CharIndex(@Splits,@Sql)
End
If @Sql <> ''
Insert @temp Values (@Sql)
Return
End
利用软件:“SQLDumpSplitter.exe”
将导出的数据备份文件切割,可以自定义每个文件的大小,这个软件有一个好处是不会把每条记录分开,保证了每条记录的完整性,但是如果一个表中插入的数据较多,那么会把插入操作分成好几个,放在不同的小文件当中。
所以如果导入过程当中遇到 data node 参数需要改动的问题时,首先得删除表记录,再重新导,不免会出现重复记录的情况。
SQLDumpSplitter在切割数据文件的同时会把数据库表结构也独立保存起来,方便进行数据库初始化操作。
⑶ Hive sql - 切割函数 split() 与空格字符串函数 space()
欢迎来到我的文章,我将为你解析Hive SQL中的两个重要字符串处理工具:split()函数和space()函数。
首先,split()函数就像一个切割大师,它能依据指定的分隔符将字符串分解成一个数组,让你轻松处理其中的各个部分。
其次,space()函数则负责生成空格,它接受一个数值参数,生成相应长度的空格字符串,这对于构建格式化的输出或填充数据很有用。
在实际应用中,我们经常将split()和space()结合起来,比如创建一个固定长度的数组,每个元素由指定数量的空格隔开。
虽然文章已接近尾声,但你的支持是我创作的动力。如果你对本文有任何疑问或希望了解更多关于Hive SQL的函数,欢迎在评论区留言,我将不断分享相关知识。
任何反馈我都将认真对待,期待你的参与,让我们共同学习和进步。
⑷ linux和k8s和数据库笔记
有关linux:
1、卸载某一个特定的挂在点。
umount /dev/datavg01 /data01
2、移掉lvm。
vgremove /dev/datavg01
3、拷贝数据。
scp -r /home/gaoge.txt [email protected]:/opt 或rsync -av /root/rpmpkgs /tmp/backups/
4、显示系统盘符并以树状格式展开。
lsblk。
5、扫描新增设备。
echo "---" >/sys/class/scsi-host/hosto/scan
6、强行杀死mysql
kill -9 $(ps -ef | grep mysql)
7、将文件内容以每一行5个的形式展示出来。
cat test2.txt | xargs -n 5
8、用cut去实现awk切割列的效果
cat/etc/passwd | cut -d : -f 2
9、sed、grsp、awk。之前已经说过了、具体看 从linux三剑客说起 这篇。
10、增加一个oracle用户让其属于oinstall组同时也隶属于dba组。useradd oracle -g oinstall -G dba
11、新建立一个组groupnew并将组id修改为255。
groupadd -g 255 groupnew
12、将本地/dev/hdb整盘中的数据备份到/dev/hdd上。
dd if=/dev/hdb of=/dev/hdd
13、查看服务器cpu个数。
cat /proc/cpuinfo | grep "physical id" | wc -l
14、查看服务器io状况并以每间隔1秒的速度输出5次。
iostat 1 5
15、查看服务器内存使用情况并以每间隔2秒的速度输出10次。
vmstat 2 10
16、将gaoge.txt中的第一列db2找到并将db两个字符用ab替换。
cat gaoge.txt |grep db2 | awk -F 2 '{print $1}' | tr db ab
17、将包名解压到指定目录。
tar -cxvf 包名 -C 指定的目录
18、linux中前后台任务切换。
ctrl+z 切换到后台、jobs显示id、fg + id 切换至前台。
19、杀掉top下stopped的进程。
ps -A -ostat,ppid,pid,cmd |grep -e '^[T]'
然后在进行kill
20、监控cpu状态。
mpstat
21、查看虚拟内存使用了多少。
swapon
22、每月1到10号4:45重启nginx。
crontab -u root -l 显示root当前的计划任务。
crontab -u root -e 后输入以下内容并保存退出。
45 4 1,10 ** systemctl start nginx
23、awk打印df -h 的第一列、第三列、最后一列。
df -h | awk '{print $1 " " $3 " " $NF}'
24、批量拉、打标签、推docker镜像的shell脚本。
#!/bin/bash
for image in 'docker images | grep 10.171.10.1:10000 | awk ' { print $1 ":" $2 }
do
version = 'echo $image | awk -F / ' { print $2 } '
docker tag $image 192.168.10.1/$version
docker push 192.168.10.1/$version
done
25、正则表达式匹配电话号码。
(?0d{2}[) -]?d{8}
26、编译安装三步骤。
./configure --prefix=安装目录
make
make install
有关kubernetes:
将kubernetes中pod的数据拷贝到物理宿主机上。
kubectl cp gyl-run/gyl-mysql-01020304: /opt/docker.sh /opt
将kubernetes中物理宿主机上的数据拷贝到pod中。
kubectl cp /opt/docker.sh gyl-run/gyl-mysql-01020304: /opt
检查当前用户有没有权限在k8s中创建资源权限。
kubectl auth can-i '*' '*'
检查当前用户有没有权限在k8s集群中创建namespace权限。
kubectl auth can-i create pods --all-namespaces
查看集群是否 健康 。
kubectl get cs
有关数据库:
查看 mysql 二进制日志格式。
show variables like ‘%binlog_format%’
查看所有二进制日志文件
show master logs
查看正在写入的二进制日志
show master status
格式化二进制显示为sql格式
mysqlbinlog --base64 --output=decode-rows -v --start-date="2019-01-25 00:00:00" --stop-date=“2019-01-26 17:30” master-bin.000006
利用bin-log去还原数据
/usr/bin/mysqlbinlog --no-default /var/lib/mysql/mysql-bin.00001 | usr/bin/mysql -u root -p pwd test
连接 postgresql
psql -U 用户名 -d 数据
数据库名 -h 主机地址 -p端口(默认端口为5432)
l 显示数据库列表
d 显示所有表
d 表名称 显示表结构
显示所有数据库用户
c 数据库名 连接数据库
q 退出pg窗口
pg备份:
pg_mp -U kong -d kong -f /opt/2019-01-26-pg.sql
pg还原:
psql -d kong -U kong -f /opt/2019-01-26-pg.sql
mongo 批量更新数据:把age大于20的class name修改为,设置multi为true