07-数据库
以下是将您提供的笔记整理成的 Markdown 格式文档:
Redis 与 MySQL / MariaDB 安装配置笔记
一、Redis 基础操作
1. 安装与启动
# 安装依赖
yum install -y gcc
# 安装 Redis
yum install -y redis redis-cli
# 启动 Redis
systemctl start redis2. 连接 Redis
# 默认连接
redis-cli
# 指定主机和端口
redis-cli -h 127.0.0.1 -p 6379
# 原始值显示(可显示中文)
redis-cli --raw3. 常用命令
# 设置键值
set 键名 键值
# 查询键值
get 键名
# 检查键是否存在
exists 键名
# 查询所有键
keys *
# 清空所有键
flushall
# 查看键的剩余过期时间
ttl 键名
# 设置键的过期时间(秒)
expire 键名 10
# 创建键并设置过期时间
setex name 5 aaa
# 键不存在时才创建(避免覆盖)
setnx name aaaa
# 查看主从角色
role
# 查看复制信息
info replication4. 主从配置
# 配置为从节点(旧版语法)
slaveof host port
# 新版语法
replicaof host portRedis 默认安装为主节点。
二、Redis 5.4 源码安装
1. 下载与安装
# 下载源码包
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
# 解压
tar -xf redis-5.0.4.tar.gz
# 编译安装
make && make install2. 配置与启动
修改配置文件 /data/redis-5.0.4/redis.conf:
daemonize yes # 改为 yes 以守护进程方式运行
bind 0.0.0.0 # 允许所有 IP 访问启动服务:
/data/redis-5.0.4/src/redis-server /data/redis-5.0.4/redis.conf3. 关闭服务
/data/redis-5.0.4/src/redis-cli shutdown三、Redis 持久化
方法一:RDB 快照
save:阻塞保存bgsave:后台异步保存(创建子进程,期间 Redis 暂不可用)
配置文件示例:
save 300 100 # 300 秒内至少 100 次修改则自动保存方法二:AOF 日志
appendonly yes # 开启 AOF 持久化,实时写入四、Redis 哨兵模式
创建哨兵配置文件 sentinel.conf:
sentinel monitor master 127.0.0.1 6379 1启动哨兵:
redis-sentinel sentinel.conf五、MySQL 5.6 安装
1. 下载与解压
wget https://cdn.mysql.com//Downloads/MySQL-5.6/MySQL-5.6.49-1.el7.x86_64.rpm-bundle.tar
tar -xvf MySQL-5.6.49-1.el7.x86_64.rpm-bundle.tar -C ./mysql5.6/2. 本地安装
cd /data/mysql5.6
yum localinstall ./*3. 配置与启动
编辑 /etc/my.cnf:
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid启动 MySQL:
systemctl start mysql4. 获取初始密码
cat ~/.mysql_secret5. 修改密码
# 方法一
mysqladmin -uroot -p旧密码 password 新密码
# 方法二
mysql -uroot -pUPDATE mysql.user SET password = PASSWORD('111111') WHERE user = 'root';
FLUSH PRIVILEGES;六、MariaDB 安装与配置
1. 添加 YUM 源
创建 /etc/yum.repos.d/mariadb.repo:
[mariadb]
name = MariaDB
baseurl = https://mirrors.aliyun.com/mariadb/yum/10.6/centos/$releasever/$basearch
module_hotfixes = 1
gpgkey = https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck = 12. 安装与启动
yum makecache
yum install -y MariaDB-server MariaDB-client
systemctl start mariadb
systemctl enable mariadb3. 初始化与登录
mariadb-secure-installation # 安全初始化
mysql -uroot -p4. 用户与授权
-- 创建用户
CREATE USER 'root'@'%' IDENTIFIED BY 'root';
-- 授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';七、MariaDB 主从复制配置
1. 主库配置
编辑 /etc/my.cnf.d/server.cnf:
[mysqld]
lower_case_table_name=1
[mariadb]
bin-address=127.0.0.1
server_id=51
log-bin=mysql-bin
log-basename=master
binlog-format=mixed
max_binlog_size=200M
expire_logs_days=142. 创建同步账号
CREATE USER 'slave'@'%' IDENTIFIED BY 'slave';
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%';3. 备份与导出
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;mysqldump --all-databases -uroot -p111111 > master1.sqlUNLOCK TABLES;4. 从库配置
[mysqld]
lower_case_table_names=1
[mariadb]
bin-address=127.0.0.1
server_id=52
max_binlog_size=200M
expire_logs_days=14
read_only=ON重启从库并导入数据:
systemctl restart mariadb
mysql -uroot -pSOURCE /data/master1.sql;5. 设置主从同步
CHANGE MASTER TO
MASTER_HOST='10.2.20.237',
MASTER_USER='slave',
MASTER_PASSWORD='slave',
MASTER_LOG_FILE='master-bin.000005',
MASTER_LOG_POS=245,
MASTER_CONNECT_RETRY=10;
START SLAVE;
SHOW SLAVE STATUS\G;6. 常见问题处理
STOP SLAVE;
RESET SLAVE;
START SLAVE;八、主从配置示例(通用)
主库配置
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mariadb/mariadb.log
pid-file=/run/mariadb/mariadb.pid
server_id=30
log_slave_updates=true
expire_logs_days=7
max_binlog_size=500M
slave_parallel_threads=2
binlog_format=ROW从库配置
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mariadb/mariadb.log
pid-file=/run/mariadb/mariadb.pid
server_id=32
relay_log=relay-bin
lower_case_table_names=1如果还需要其它帮助,可以随时告诉我。