分类 运维快感 下的文章

centos7下解决journal日志越来越大的问题

  • 查看journal占用磁盘空间大小
    journalctl --disk-usage
  • 指定journal占用磁盘空间大小
    journalctl --vacuum-size=1G
  • 指定journal日志保存时间
    journalctl --vacuum-time=1years
  • 实时查看最新日志
    journalctl -f
  • 查看内核日志
    journalctl -k
  • 查看系统启动日志
    journalctl -b
  • 查看指定时间的日志1
    journalctl --since "20 min ago"
  • 查看指定时间的日志2
    journalctl --since yesterday
  • 查看指定时间的日志3
    journalctl --since 09:00 --until "1 hour ago"

centos 7 日志清理

cat /dev/null > /var/log/boot.log
cat /dev/null > /var/log/btmp
cat /dev/null > /var/log/cron
cat /dev/null > /var/log/dmesg
cat /dev/null > /var/log/firewalld
cat /dev/null > /var/log/grubby
cat /dev/null > /var/log/lastlog
cat /dev/null > /var/log/mail.info
cat /dev/null > /var/log/maillog
cat /dev/null > /var/log/messages
cat /dev/null > /var/log/secure
cat /dev/null > /var/log/spooler
cat /dev/null > /var/log/syslog
cat /dev/null > /var/log/tallylog
cat /dev/null > /var/log/wpa_supplicant.log
cat /dev/null > /var/log/wtmp
cat /dev/null > /var/log/yum.log

查看服务器运行情况

// 服务器运行情况
tuptime
// 查看脚本运行
top -c

查看负担重的sql

mysql> show processlist;
// 或者
mysql> show full processlist

清除mysql查询

mysql> kill 查询ID

添加索引

mysql>  ALTER TABLE tableName ADD INDEX IndexName (`columnName`);

删除索引

mysql> DROP index indexName ON tableName;

sql语句分析

mysql> explain sql语句

mysql57修改用户密码

-- 更改用户密码
update mysql.user set authentication_string=PASSWORD('[userPassword]') where user='[username]';
-- 刷新权限表
flush privileges;

mysql57权限

-- 查看用户权限
show grants for [userName];

-- 创建用户并给予所有权限
GRANT ALL PRIVILEGES ON [dbName].* to [userName]@'[hostName]' identified by '[password]';

docker目录

  • /var/lib/docker

进入容器

docker exec -it [名称] bash

删除所有镜像(记得在启动docker才能操作)

docker rmi -f $(docker images -q)

docker-compose基础

// 正常后台启动
docker-compose up -d
// 重新build
docker-compose up -d --build
// 停止
docker-conpose down
// 清理
docker system prune -a 
// 重新build
docker-compose build 

删除所有目录下所有jpg

find . -name "*.jpg" |  xargs rm -rf

备份bin log日志(千万别重新启动数据库,可能会导致bin log日志被删除

cp -r /usr/local/mysql /usr/local/mysql-bak

切换到mysql/bin目录中使用mysqlbinlog命令

cd /usr/local/mysql/bin

寻找开始的节点与结束的节点

最好是数据库创建数据库时候作为开始
需要恢复的节点

./mysqlbinlog --start-position [开始节点]  --stop-position [结束节点] /usr/local/mysql-bak/mysql-bin.000003 > test.sql

导入数据库

mysql -uroot -proot < test.sql

也可以合并两部分: ./mysqlbinlog --start-position [开始节点] --stop-position [结束节点] /usr/local/mysql-bak/mysql-bin.000003 | mysql -uroot -proot

导出数据

gz打包与解压

压缩文件

压缩为 .gz文件,源文件会消失

gzip 源文件

压缩并命名且保留源文件

gzip -c 源文件 > 压缩文件

压缩目录(gzip 压缩目录 只会压缩目录下的所有文件 不会压缩目录)

gzip -r 目录

解压

普通解压

gzip -d 压缩文件

zip 打包与解包

打包多个文件或者文件夹

zip -p -r 压缩名字 压缩文件1 压缩文件2
// 比如: 把目录下的test1文件夹,test2文件夹,test.txt文件 压缩成ttt.zip
zip -p -r ttt.zip test1 test2 test.txt

解包

普通解包

unzip 解压文件
// 比如:test.zip
unzip test.zip

jar 打包与解包

jar打包

mave打包

mvn clean package -Dmaven.test.skip=true

jar解包

jar解包

jar xvf jar的名字
// 比如: test.jar
jar xvf test.jar

把解包的jar还原为jar包

jar cvfM0 打包的名字 打包的文件
// 比如:把当前目录下所有文件打包成test.jar
jar cvfM0 test.jar ./

查看进程

ps -aux |grep xxx
// 比如: 查看test.jar运行情况
ps -aux |grep test.jar

查询进程并停止进程

pid=`ps -aux | grep xxx | grep -v grep | awk '{print $2}' `
[ -n "$pid" ] && kill -s 9 $pid
// 比如: 停止test.jar进程
pid=`ps -aux | grep test.jar | grep -v grep | awk '{print $2}' `
[ -n "$pid" ] && kill -s 9 $pid