前言 Shell 编程能提升我们工作效率,在 shell 中, 可以借助文件测试符号来判断一个文件是否存在。 常用的文件测试符号有 -e, -f, -d, -s, -r。 1. -e 判断文件是否存在 #!/bin/csh set fileName = "test.txt" #set fileName = "test_dir" if (-e $fileName) then echo "$fileName" " is exit" else…
前言 Shell 编程能提升我们工作效率,在 shell 中, 可以借助文件测试符号来判断一个文件是否存在。 常用的文件测试符号有 -e, -f, -d, -s, -r。 1. -e 判断文件是否存在 #!/bin/csh set fileName = "test.txt" #set fileName = "test_dir" if (-e $fileName) then echo "$fileName" " is exit" else…
如何实现MySQL底层优化:事务锁的高级性能优化和避免死锁的方法 引言: 在数据库系统中,事务锁是保证数据一致性和并发访问的重要机制之一。然而,在高并发场景下,事务锁可能会导致性能问题和死锁。为了提高MySQL性能,我们需要对事务锁进行高级性能优化,并采取措施避免死锁的发生。本文将介绍MySQL底层事务锁的高级性能优化方法和避免死锁的技巧,并提供具体的代码示例。 一、事务锁的高级性能优化方法 降低锁粒度 在MySQL中,锁粒度是指锁的范围大小。较大的锁粒度会导致并发访问受限,较小的锁粒度则会增加锁争用的可能性。因此…
1. 搭配命令 Linux命令常用符号 符号类型 使用命令 解释说明 ` `ls` 倒引号内命令表示输出 Linux 命令 * ls *.sh * 表示模糊匹配,*在前表示查询以 .sh结尾的文件/目录,后面反之 - cd - 表示返回上次所在路径 / cd / 进入根目录 ./ 表示当前目录(复制文件到当前目录 cp xxx ./) ./ xxx.sh 执行 xxx.sh 文件(xxx.sh 需要可执行权限) & sleep 5 & & 表示某个命令后台执行(jobs 可调出后台ID) |…
rmtrash 是linux和mac下命令行版本rm的回收站,安装后对用户透明,符合正常使用rm的习惯(支持rm -fr file哦),有了他再也不怕rm时候手颤抖了(能自动拒绝 rm -fr / 哦)。 rmtrash stands for "rm trash" which acts just like the system built-in rm command,and just moves the file to the trash for recovery when needed. 1、使用说明 (1)安装…
#!/bin/bash export PATH=/bin:/usr/bin:/usr/local/bin # 备份目录名称 TODAY=`date +"%Y-%m-%d-%H-%M-%S"` # 备份文件存放路径 DB_BACKUP_PATH='/data/backup/database' # 数据库服务器地址 MYSQL_HOST='127.0.0.1' MYSQL_PORT='3306' # 备份账户,建议创建一个只读账户使用 MY…
今天在处理一个 MySQL 数据转移到 MariaDB 上,mysqldump 导出数据有10多G,在导入数据时提示: 错误1193(HY000):未知系统变量’GTID_PURGED’ 这个问题处理也简单,就是 MariaDB 中没有 GTID_PURGED 变量,在导出的 sql 文件中把: SET @@GLOBAL.GTID_PURGED='xxx' 一句注释掉就行了,但问题是文件有10多个G,直接打开编辑就等着服务器死机吧~ 先用 less 命令找到行号吧: less -N dump.s…
Redis 6实现了通道加密,提高了redis的安全性。Redis作为缓存数据库,里面很有可能缓存重要的敏感信息,所以支持tls通道加密还是很有必要的,当然敏感信息还是建议加密保存。 唯一不好的是PHP的phpredis扩展还有跟上,没找到办法链接有tls的redis服务器。 创建证书: mkdir -p redis-tls cd redis-tls openssl genrsa -out ca.key 2048 openssl req -x509 -new -nodes -sha256 -key \ ca.key…
1. shell 介绍 Shell是Linux/Unix的一个外壳,你理解成衣服也行。它负责外界与Linux内核的交互,接收用户或其他应用程序的命令,然后把这些命令转化成内核能理解的语言,传给内核,内核是真正干活的,干完之后再把结果返回用户或应用程序。 Linux/Unix提供了很多种Shell,为毛要这么多Shell?难道用来炒着吃么?那我问你,你同类型的衣服怎么有那么多件?花色,质地还不一样。写程序比买衣服复杂多了,而且程序员往往负责把复杂的事情搞简单,简单的事情搞复杂。牛程序员看到不爽的Shell,就会自己重…
连接服务器后,使用info命令查看Redis信息和状态: info 其中memory段显示了redis的内存使用状态。 INFO [section] 以一种易于解释(parse)且易于阅读的格式,返回关于 Redis 服务器的各种信息和统计数值。 通过给定可选的参数 section ,可以让命令只返回某一部分的信息: server 部分记录了 Redis 服务器的信息,它包含以下域: redis_version : Redis 服务器版本 redis_git_sha1 : Git SHA1 redis_git_di…
在PHP服务器和数据库服务器中使用PDO连接的话是明文传输的,如果在网络监听的话会有数据泄漏的风险。 在正式生产环境应当使用自签名SSL证书连接。 MariaDB数据库服务器配置见:《MariaDB MySQL 使用自签名SSL连接》 记录下PHP的PDO连接: <?php try { $options = array( PDO::MYSQL_ATTR_SSL_KEY => '/data/www/test/certs/client-key.pem', PDO::MYSQL_ATTR_…