有關linux:
1、卸載某壹個特定的掛在點。
umount /dev/datavg01 /data01
2、移掉lvm。
vgremove /dev/datavg01
3、拷貝數據。
scp -r /home/gaoge.txt root@192.168.10.1:/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 表名稱 顯示表結構
du 顯示所有數據庫用戶
c 數據庫名 連接數據庫
q 退出pg窗口
pg備份:
pg_dump -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