1. 数据库中间件
MySQL-Docker
docker run -p 3306:3306 --name mysql \
-v /root/mysql/log:/var/log/mysql \
-v /root/mysql/data:/var/lib/mysql \
-v /root/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 \
--restart=always \
-d mysql:5.7
# windows
docker run -p 3306:3306 --name mysql -v /d/Docker/mysql/log:/var/log/mysql -v /d/Docker/mysql/data:/var/lib/mysql -v /d/Docker/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --restart=always -d mysql:5.7
MySQL-K8s
mysql.cnf
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
init_connect='SET collation_connection = utf8mb4_unicode_ci'
init_connect='SET NAMES utf8mb4'
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
[client] # 客户端配置段
default-character-set=utf8mb4 # 设置客户端默认字符集为utf8mb4
[mysql] # MySQL配置段
default-character-set=utf8mb4 # 设置MySQL默认字符集为utf8mb4
[mysqld] # MySQL服务器配置段
init_connect='SET collation_connection = utf8mb4_unicode_ci' # 在连接建立时初始化连接字符集为utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4' # 在连接建立时设置默认字符集为utf8mb4
character-set-server=utf8mb4 # 设置服务器端字符集为utf8mb4
collation-server=utf8mb4_unicode_ci # 设置服务器端排序规则为utf8mb4_unicode_ci
skip-character-set-client-handshake # 跳过客户端握手阶段的字符集协商
skip-name-resolve # 跳过DNS解析,直接使用IP地址进行连接
MySQL
http://repo.mysql.com/
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
sudo yum install mysql-server -y
sudo chown -R mysql:mysql /var/lib/mysql
service mysqld restart
mysql -uroot
USE mysql;
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('password');
exit;
2. 消息队列中间件(MQ)
3. 缓存中间件
Redis-Docker
docker run -d -p 6379:6379 --restart=always \
-v /root/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /root/redis/data:/data \
--name redis-01 redis:6.2.5 \
redis-server /etc/redis/redis.conf
# windows
docker run -d -p 6379:6379 --restart=always -v /d/Docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /d/Docker/redis/data:/data --name redis-01 redis:6.2.5 redis-server /etc/redis/redis.conf
Redis-K8s
redis.conf
appendonly yes
port 6379
bind 0.0.0.0
appendonly yes # 开启AOF持久化模式,将写操作追加到文件末尾
port 6379 # 设置Redis服务器监听的端口号为6379
bind 0.0.0.0 # 允许来自任意地址的连接
Redis
#安装gcc
yum install -y autoconf automake bzr gcc libtool make mercurial subversion
#下载
cd /root && wget https://download.redis.io/releases/redis-7.0.9.tar.gz
#解压
tar -zvxf redis-7.0.9.tar.gz
#打开目录
cd redis-7.0.9
#编译
make
#安装
make install PREFIX=/root/redis
#删除无用文件
rm -f /root/redis-7.0.9.tar.gz
#启动方法1
cd /root/redis-7.0.9/src
./redis-server ../redis.conf
#启动方法2
#配置环境变量
vi ~/.bash_profile
REDIS_HOME=/root/redis
PATH=$PATH:$REDIS_HOME/bin
#配置生效
source ~/.bash_profile
#启动
redis-server /root/redis-7.0.9/redis.conf
#连接
redis-cli
#关闭
redis-cli shutdown
#开机自启
cd /usr/lib/systemd/system
touch redis.service
vi redis.service
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
TimeoutStartSec=3600
ExecStart=/root/redis/bin/redis-server /root/redis-7.0.9/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
#重载系统服务
systemctl daemon-reload
#设置开机自启
systemctl enable redis.service
#取消开机自启
systemctl disable redis.service
#启动服务
systemctl start redis.service
#停止服务
systemctl stop redis.service
#查看服务状态
systemctl status redis.service
#后台运行1
pm2 start
#后台运行2
cd /root/redis-7.0.9
vi redis.conf
#daemonize no 改为yes 后台一直运行
daemonize yes
#设置密码
requirepass "你的密码"
4. 搜索引擎中间件
ElasticSearch-Docker
docker run --restart=always -d -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
-v es-config:/usr/share/elasticsearch/config \
-v /mydata/es-01/data:/usr/share/elasticsearch/data \
--name es-01 \
elasticsearch:7.13.4