安裝mariadb +主從複製 https://www.cnblogs.com/pyyu/p/9467289.htmlhtml
參考博客 redis http://www.javashuo.com/article/p-cglbaabl-eh.htmlnode
redis發佈訂閱 三個角色,提供的redis命令 1.發佈者 publish 頻道 消息 給頻道發消息 2.訂閱者 SUBSCRIBE 頻道 訂閱頻道 PSUBSCRIBE 頻道* 支持模糊匹配的訂閱 3.頻道 channel 頻道名 自定義
redis持久化之RDB 1.在配置文件中添加參數,開啓rdb功能 redis.conf 寫入 port 6379 daemonize yes logfile /data/6379/redis.log dir /data/6379 dbfilename s15.rdb save 900 1 #rdb機制 每900秒 有1個修>改記錄 save 300 10 #每300秒 10個修改 記錄 save 60 10000 #每60秒內 10000修>改記錄 2.開啓redis服務端,測試rdb功能 redis-server redis.conf
1.開啓aof功能,在redis.conf中添加參數 port 6379 daemonize yes logfile /data/6379/redis.log dir /data/6379 appendonly yes appendfsync everysec 2.啓動redis服務端,指定aof功能,測試持久化數據
1.準備rdb的redis服務端 redis-server s15-redis.conf (註明這是在rdb持久化模式下) 2.切換rdb到aof redis-cli 登陸redis,而後經過命令,激活aof持久化 127.0.0.1:6379> CONFIG set appendonly yes #用命令激活aof持久化(臨時生效,注意寫入到配置文件) OK 127.0.0.1:6379> 127.0.0.1:6379> 127.0.0.1:6379> CONFIG SET save "" #關閉rdb持久化 2.5 將aof操做,寫入到配置文件,永久生效,下次重啓後生效 port 6379 daemonize yes logfile /data/6379/redis.log dir /data/6379 #dbfilename s15.rdb #save 900 1 #save 300 10 #save 60 10000 appendonly yes appendfsync everysec 3.測試aof數據持久化 ,殺掉redis,從新啓動 kill redis-server s15-redis.conf 4.寫入數據,檢查aof文件
1.檢查redis數據庫信息,主從狀態的命令 redis-cli -p 6379 info 檢查數據庫信息 redis-cli -p 6379 info replication 檢查數據庫主從信息 1.準備三個redis配置文件,經過端口的區分,啓動三個redis數據庫實例,而後配置主從複製 redis-6379.conf port 6379 daemonize yes pidfile /data/6379/redis.pid loglevel notice logfile "/data/6379/redis.log" dbfilename dump.rdb dir /data/6379 redis-6380.conf #經過命令快速生成配置文件 sed "s/6379/6380/g" redis-6379.conf > redis-6380.conf slaveof 127.0.0.1 6379 #指明主庫的身份ip 和端口 redis-6381.conf #經過命令快速生成配置文件 sed "s/6379/6381/g" redis-6379.conf > redis-6381.conf slaveof 127.0.0.1 6379 2.啓動三個數據庫實例,檢測redis主從同步方案 3.redis主從賦值,故障手動切換, 1.殺死6379的主庫實例 kill 主庫 2.手動切換主從身份 1.登陸 redis-6380 ,經過命令,去掉本身的從庫身份,等待鏈接 info replication 查看本身的身份狀態 slaoveof no one 2.登陸redis-6381 ,經過命令,生成新的主任 slaveof 127.0.0.1 6380 3.測試新的主從數據同步
1.什麼是哨兵呢?保護redis主從集羣,正常運轉,當主庫掛掉以後,自動的在從庫中挑選新的主庫,進行同步 2.redis哨兵的安裝配置 1. 準備三個redis數據庫實例(三個配置文件,經過端口區分) redis-server redis-6379.conf redis-server redis-6380.conf redis-server redis-6381.conf 2.準備三個哨兵,準備三個哨兵的配置文件(僅僅是端口的不一樣26379,26380,26381) touch redis-sentinel-26379.conf port 26379 dir /var/redis/data/ logfile "26379.log" sentinel monitor s15master 127.0.0.1 6379 2 sentinel down-after-milliseconds s15master 30000 sentinel parallel-syncs s15master 1 sentinel failover-timeout s15master 180000 daemonize yes touch redis-sentinel-26380.conf 快速生成配置文件 sed "s/26379/26380/g" redis-sentinel-26379.conf > redis-sentinel-26380.conf touch redis-sentinel-26381.conf sed "s/26379/26381/g" redis-sentinel-26379.conf > redis-sentinel-26381.conf 運行時先建立文件 mkdir -p /var/redis/data 4.啓動三個哨兵 redis-sentinel redis-sentinel-26379.conf redis-sentinel redis-sentinel-26380.conf redis-sentinel redis-sentinel-26381.conf 5.檢查哨兵的通訊狀態 redis-cli -p 26379 info sentinel 查看結果以下以後,表示哨兵正常 最後那裏 # Sentinel sentinel_masters:1 sentinel_tilt:0 sentinel_running_scripts:0 sentinel_scripts_queue_length:0 sentinel_simulate_failure_flags:0 master0:name=s15master,status=ok,address=127.0.0.1:6381,slaves=2,sentinels=3 運行 redis-cli -p 6381 info replication 檢查role:slave 狀態 6.殺死一個redis主庫,6379節點,等待30s之內,檢查6380和6381的節點狀態 kill 6379主節點 redis-cli -p 6380 info replication redis-cli -p 6381 info replication 若是切換的主從身份以後,(原理就是更改redis的配置文件,切換主從身份) 7.恢復6379節點的數據庫,查看是否將6379添加爲新的slave身份 redis-server redis-6379.conf redis-cli -p 6379 info replication
redis-cluster安裝配置 1.準備6個redis數據庫實例,準備6個配置文件redis-{7000....7005}配置文件 redis-7000.conf redis-7001.conf redis-7002.conf redis-7003.conf redis-7004.conf redis-7005.conf 配置文件 port 7005 daemonize yes dir "/opt/redis/data" logfile "7005.log" dbfilename "dump-7005.rdb" cluster-enabled yes cluster-config-file nodes-7005.conf sed "s/7000/7001/g" redis-7000.conf > redis-7001.conf sed "s/7000/7002/g" redis-7000.conf > redis-7002.conf sed "s/7000/7003/g" redis-7000.conf > redis-7003.conf sed "s/7000/7004/g" redis-7000.conf > redis-7004.conf sed "s/7000/7005/g" redis-7000.conf > redis-7005.conf 2.啓動6個redis數據庫實例 redis-server redis-7000.conf redis-server redis-7001.conf redis-server redis-7002.conf redis-server redis-7003.conf redis-server redis-7004.conf redis-server redis-7005.conf 3.配置ruby語言環境,腳本一鍵啓動redis-cluster 1.下載ruby語言的源碼包,編譯安裝 wget https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.gz 2.解壓縮 ./configure --prefix=/opt/ruby/ 釋放makefile make && make install 編譯且安裝 3.下載安裝ruby操做redis的模塊包 wget http://rubygems.org/downloads/redis-3.3.0.gem 4.配置ruby的環境變量 echo $PATH vim /etc/profile 寫入最底行 PATH=$PATH:/opt/ruby/bin/ 讀取文件 source /etc/profile 5.經過ruby的包管理工具去安裝redis包,安裝後會生成一個redis-trib.rb這個命令 /opt/ruby/bin/gem install -l redis-3.3.0.gem 一鍵建立redis-cluster 其實就是分配主從關係 以及 槽位分配 slot槽位分配 /opt/redis-4.0.10/src/redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 6.檢查節點主從狀態 redis-cli -p 7000 info replication 7.向redis集羣寫入數據,查看數據流向 redis-cli -p 7000 #這裏會將key自動的重定向,放到某一個節點的slot槽位中 set name s15 set addr shahe
1.yum解決編譯nginx所需的依賴包,以後你的nginx就不會報錯了 yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y 2.安裝配置nginx軟件,下載源代碼 wget -c https://nginx.org/download/nginx-1.12.0.tar.gz 3.解壓縮源碼,編譯且安裝 tar -zxvf nginx-1.12.0.tar.gz 切換源碼目錄 ./configure --prefix=/opt/nginx112/ make && make install 4.進入nginx的工做目錄 cd /opt/ngin112/ 5.查看gninx的工做目錄 [root@localhost nginx112]# ls conf 配置文件目錄 html 網頁根目錄,你的index.html就放在這裏,而後經過域名訪問 pythonav.cn/index.html html/index.html logs 日誌 sbin 存放nginx可執行命令的 6.定製本身的nginx網站 修改/opt/nginx112/html/index.html 這是nginx網頁根文件,清空內容寫入本身的html標籤 7.啓動nginx服務器 /opt/nginx112/sbin/nginx 直接回車執行 8.檢查nginx服務端口 ps -ef|grep nginx 9.經過windows訪問nginx web服務 瀏覽器 訪問http://192.168.13.79