#!/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…
#!/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_…
1. 数据库版本 MariaDB [(none)]> select version(); +--------------------+ | version() | +--------------------+ | 10.8.6-MariaDB-log | +--------------------+ 1 row in set (0.000 sec) 2. 配置文件 # 在[mysqld]下添加 log-bin = /data/mariadb-binlog/mariadb-log # binlog日志路径,格式…
加密是一个永恒的话题,一般的做法是在程序中做好加密再存入数据库中,实际上数据库本身就带有了强大的加密功能,在开发时可以将加密减密部分丢给数据库处理,以减轻程序负担。 1. 加密减密函数 1.1 不可逆哈希函数 MD5()、SHA1()、SHA2() MariaDB [(none)]> select MD5('1234'), SHA1('1234'); +----------------------------------+------------------------…
MariaDB在10.1.3版本中加入了支持表加密和表空间加密的特性,在10.1.7版本加入了支持binlog加密的特性,这使得我们可以对数据文件和binlog进行加密,避免数据文件、binlog等文件被窃取后破解出关键数据。 一. MariaDB的加密特性 1. innodb表空间加密 2. innodb日志加密 3. binlog加密 4. aria表加密 5. 临时文件加密 加密特性的一些限制: 1. 元数据文件(.frm)目前尚未加密; 2. 目前只有MariaDB server才能解密,mysqlbinl…
1. 字符串函数 完整的内置字符串函数见《官方手册》。 1.1 字符串连接函数 有两个字符串连接函数:concat(s1,s2,s3,...,sN)和concat_ws(sep,s1,s2,s3,...,sN)。 concat()将多个字符串连接起来形成一个长字符串。它会尝试将字符全部转换为字符型,如果存在null,则直接返回null。 MariaDB [(none)]> select concat('a','b',1),concat(1,2,3),concat(…