首页
友链
关于
免责声明
Search
1
王者营地战绩数据王者荣耀查询网页源码
6,209 阅读
2
群晖Active Backup for Business套件备份Linux服务器教程
4,384 阅读
3
影视分享
4,313 阅读
4
(亲测)Jrebel激活破解方式2019-08-21
4,289 阅读
5
centos7 安装及卸载 jekenis
3,573 阅读
日常
文章
后端
前端
Linux
异常
Flutter
分享
群辉
登录
Search
标签搜索
docker
springboot
Spring Boot
java
linux
Shiro
Graphics2D
图片
游戏账号交易
Mybatis
Spring Cloud
centos
脚本
Web Station
群辉
王者营地
战绩查询
平台对接
Spring Cloud Alibaba
nacos
绿林寻猫
累计撰写
249
篇文章
累计收到
26
条评论
首页
栏目
日常
文章
后端
前端
Linux
异常
Flutter
分享
群辉
页面
友链
关于
免责声明
搜索到
52
篇与
Linux
的结果
2023-03-14
MYSQL主从双向同步
修改A my.cnf # For advice on how to change settings please see # http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci init-connect = 'SET NAMES utf8mb4' server-id = 2 #保持唯一 binlog-do-db = db1 #需要同步的binlog binlog-ignore-db = mysql#不需要同步的binlog #log-slave-updates slave-skip-errors=all replicate-do-db = db1 #需要同步的数据库 如果有多个可添加多个此项 replicate-ignore-db = mysql #不需要同步的数据库 如果需要多个可添加多个此项 #这样A的auto_increment字段产生的数值是:1, 3, 5, 7, …等奇数ID了 auto_increment_offset = 1 auto_increment_increment = 2 #slave_net_timeout这个参数究竟设置多少,要根据自己的mysql主库数据更新的频繁程度:主库数据更新频繁的,就将这个参数值设小点,更新不频繁就设大点。一般这个参数设置5s、10s、15s、20s、30s等等。 slave-net-timeout=5 #复制完的sql语句是否立即从中继日志中清除,1表示立即清除 relay-log-purge=1 [client] default-character-set=utf8mb4 [mysql] #设置mysql默认字符集 default-character-set=utf8mb4 修改B my.cnf # For advice on how to change settings please see # http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci init-connect = 'SET NAMES utf8mb4' server-id = 3 #保持唯一 binlog-do-db = db1 #需要同步的binlog binlog-ignore-db = mysql#不需要同步的binlog #log-slave-updates slave-skip-errors=all replicate-do-db = db1 #需要同步的数据库 如果有多个可添加多个此项 replicate-ignore-db = mysql #不需要同步的数据库 如果需要多个可添加多个此项 auto_increment_offset = 2 auto_increment_increment = 2 slave-net-timeout=5 #复制完的sql语句是否立即从中继日志中清除,1表示立即清除 relay-log-purge=1 [client] default-character-set=utf8mb4 [mysql] #设置mysql默认字符集 default-character-set=utf8mb4 启动同步A执行# /usr/local/mysql/bin/mysql -u root -p mysql> show master status; 显示(当然这个是我机器的情况,你的不可能跟我一样哈,只是个例子): +------------------+----------+-------------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+-------------------+------------------+ | mysql-bin.000009 | 98 | discuz | mysql | +------------------+----------+-------------------+------------------+在B上执行# /usr/local/mysql/bin/mysql -u root -p mysql> slave stop; mysql> change master to master_host='192.168.1.123', master_user='back', master_password='back', master_log_file='mysql-bin.000009', master_log_pos=98; mysql> slave start; mysql> show slave status\G; Slave_IO_Running: Yes Slave_SQL_Running: Yes如果都是yes,那代表已经在同步设置双向同步将上一步反着重复操作一遍其他#启用从库日志,这样可以进行链式复制 log-slave-updates #从库是否只读,0表示可读写,1表示只读 read-only=1 #只复制某个表 replicate-do-table=tablename #只复制某些表(可用匹配符) replicate-wild-do-table=tablename% #只复制某个库 replicate-do-db=dbname #只复制某些库 replicte-wild-do-db=dbname% #不复制某个表 replicate-ignore-table=tablename #不复制某些表 replicate-wild-ignore-table=tablename% #不复制某个库 replicate-ignore-db=dbname #复制完的sql语句是否立即从中继日志中清除,1表示立即清除 relay-log-purge=1mysql主从复制异常Slave_IO_Running: NO的出现原因以及解决1.mysql5.6以上版本使用唯一uuid表示符,数据迁移是使用的物理备份,uuid会重复,修改uuid不一致即可造成这个错误的主要原因是使用主服务器克隆出来的虚拟机去实现mysql的主从复制解决办法:在主服务器和从服务器各运行一遍下面的代码对比server-uuid 是否一样,如果一样表示你有可能也是因为这个原因出错 cat /var/lib/mysql/auto.cnf 如果server-uuid一样删除auto.cnf文件 rm /var/lib/mysql/auto.cnf 重启mysql服务service mysqld restart 然后再重新进行一遍mysql主从复制的过程,因为地址可能会改变问题就解决啦,如果没有解决可以尝试从头开始。当然也有可能有其他的问题,这只是我自己这个情况的一个解决办法。确认server-id 是否唯一, mysql 有可能并没有加载my.cnf 文件中的server-id
2023年03月14日
150 阅读
0 评论
0 点赞
2023-02-27
安装及卸载NFS服务
centos 1) 安装步骤 # 服务端安装步骤 yum -y install rpcbind nfs-utils # 创建文件夹并赋权 mkdir /storage/data/ -p #如果出现挂载文件夹下面的文件找到不,记得给源添加权限 chmod 777 -R /storage/data/ vi /etc/exports #添加下行 /storage/data/ *(rw,sync,all_squash) # 使配置生效 exportfs -r # 启动服务 systemctl start rpcbind && systemctl start nfs # 设置开机启动 systemctl enable rpcbind && systemctl enable nfs # 检测 showmount -e 192.168.194.102 # 客户端安装步骤 yum -y install rpcbind # 检测 showmount -e 192.168.194.102 2) 卸载步骤 yum remove rpcbind nfs-utilsUbuntu 1) 安装步骤 # 服务端安装步骤 apt-get install nfs-kernel-server # 客户端安装步骤 sudo apt-get install nfs-common # 挂载 mount -t nfs 127.0.0.1:/data/nfs /data/testnfs # 卸载 umount /data/testnfs
2023年02月27日
569 阅读
0 评论
0 点赞
2023-02-16
Nginx负载均衡配置
服务准备配置相同的三个服务:IP:8001 、 IP:8002 、 IP:8003修改nginx配置文件vim /usr/local/nginx/conf/nginx.conf1.配置upstream,在 http {}里 新增 upstream 指向你启动的那三个后端服务。upstream [起一个自己容易辨识的名字:webname]{ server IP:8001; server IP:8002; server IP:8003; } 2.在 server {} 里添加一个location,并且配置 proxy_pass,(注意不要有同名的 比如已经有一个 location / 了,你再添加重启Nginx就会报错)location / { #转发到负载服务上 proxy_pass http://webname; } 完整配置如下: #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; pid /usr/local/nginx/logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; upstream webname{ server IP:8001; server IP:8002; server IP:8003; } server { listen 9600; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; # location / { #root html; #index index.html index.htm; #} location / { #转发到负载服务上 proxy_pass http://webname; } # location /test/api2 { # #转发到负载服务上 # proxy_pass http://webservers; # } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} } 3.重载配置# 重新加载(要到Nginx安装目录执行) ./nginx -s reload # 重新启动服务 (如果你添加了服务) systemctl restart nginx.service /usr/local/nginx/sbin/nginx -s reload 负载均衡配置ip_hash每个请求按访问IP的hash结果进行分配,这样每个访客就可以固定访问一个后端服务,一定程度上可以解决session问题;upstream webname { ip_hash; server IP:8001; server IP:8002; server IP:8003; } weightweight代表权重,默认为1,权重越高,被分配的客户端请求就会越多upstream webname { server IP:8001 weight=6; server IP:8002 weight=3; server IP:8003 weight=1; } fair(第三方)按后端服务器的响应时间来分配请求,响应时间短的将会被优先分配upstream webname { server IP:8001; server IP:8002; server IP:8003; fair; } url_hash按访问URL的hash结果分配。这样相同的url会被分配到同一个节点,主要为了提高缓存命中率。比如,为了提高访问性能,服务端有大量数据或者资源文件需要被缓存。使用这种策略,可以节省缓存空间,提高缓存命中率upstream webname { hash &request_uri; server IP:8001; server IP:8002; server IP:8003; } least_conn按节点连接数分配,把请求优先分配给连接数少的节点。该策略主要为了解决,各个节点请求处理时间长短不一造成某些节点超负荷的情况。upstream webname { least_conn; server IP:8001; server IP:8002; server IP:8003; }
2023年02月16日
236 阅读
0 评论
0 点赞
2022-03-11
linux自动kill进程自动启动jar包脚本
start.sh#!/bin/bash NAME="xx.jar" #想要杀死的进程 PORT="8888" #端口 PROCESS="xx.jar" #jar包名称 LOGDIR="nohup.out" echo $NAME ID=`ps -ef |grep java|grep $NAME|grep -v grep|awk '{print $2}'` #注意此shell脚本的名称,避免自杀 if [ -z "$ID" ];then echo "process id is empty, process is not existed..." echo "process will start..." nohup java -Dserver.port=$PORT -jar -Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m $PROCESS > $LOGDIR 2>&1 & echo "process has start..." tail -f nohup.out else echo $ID for id in $ID do kill -9 $id echo "killed $id" done echo "process will restart..." nohup java -Dserver.port=$PORT -jar -Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m $PROCESS > $LOGDIR 2>&1 & echo "process has restart..." tail -f nohup.out fi
2022年03月11日
603 阅读
0 评论
0 点赞
2022-03-09
docker教程(八)安装harbor,对镜像仓库进行管理
笔者上篇说到搭建自己的 docker私服 用来管理自己的镜像,但是并没有UI界面及权限操作,这篇文章就是弥补这些问题。安装Harbor{card-list}{card-list-item}Harbor 项目是以 registry 为基础的镜像仓库,另外提供了管理 UI, 基于角色的访问控制(Role Based Access Control),AD/LDAP 集成、以及审计日志(Audit logging) 等企业用户需求的功能,同时还原生支持中文。可以说 Harbor 提供了完备的管理系统以弥补 registry 的不足。在资源占用方面 Harbor 也比较小。{/card-list-item}{/card-list}下载可以去 Github 中下载 下载完上传到服务器解压,这里笔者安装的是V1.10.10,可根据自己的选择安装其他版本配置解压之后会有一个harbor目录,中间有harbor.yml.tml 和 install.sh。 harbor.yml.tml 是配置文件模板,需要将此文件改为 harbor.yml,部署时会使用 harbor.yml 配置文件。 install.sh 是执行文件,执行此文件就可以进行部署。 对yml参数进行修改:# 设置访问地址,可以使用ip、域名,不可以设置为127.0.0.1或localhost。 # 访问地址 hostname: harbor.maven.vip # HTTP 访问协议设置 http: # http访问端口号 port: 88 # 禁用HTTPS协议访问 #https: # https port for harbor, default is 443 # port: 443 # The path of cert and key files for nginx # certificate: /your/certificate/path # private_key: /your/private/key/path # admin 用户密码 harbor_admin_password: XXXXXXX # 数据库设置 database: # 数据库密码 password: XXXXXX # Harbor数据挂载目录 data_volume: /volumes/harbor 部署修改为配置文件之后,执行install.sh文件进行部署。 部署的时候可能会遇见文件夹不存在等问题,可以一步步自己建好,再尝试install.sh访问部署完成之后,根据之前配置ip和端口进行访问。 账号默认admin,密码也是之前配置 推送登录之后可以再项目定额看到仓库名称 #查看镜像 docker images #登录 docker login -u [harbor账号] -p [harbor密码] ip:port #推送镜像 docker tag [选中的镜像名称] [重新定义镜像名称为:ip:port/library/镜像名称:版本] docker push [ip:port/library/镜像名称:版本] #拉取镜像 docker pull [ip:port/library/镜像名称:版本]推送成功之后就可以在这里管理
2022年03月09日
415 阅读
0 评论
0 点赞
2022-02-24
docker教程(六)docker-compose.yml参数配置
version: "1.0" services: redis: image: "redis:alpine" ports: - "6679:6379" tomcat: image: "tomcat" #镜像 ports: - "8080:8080" #宿主机和容器端口 volumes: - /usr/local/java:/usr/local/java #将主机的数据卷或着文件挂载到容器里。
2022年02月24日
268 阅读
0 评论
0 点赞
2022-02-24
docker教程(五)通过Docker Compose配置YML创建并启动所有服务
简介Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。Compose安装Linux 上我们可以从 Github 上下载它的二进制包来使用,最新发行的版本地址:https://github.com/docker/compose/releases。运行以下命令以下载 Docker Compose 的当前稳定版本:sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose配置权限sudo chmod +x /usr/local/bin/docker-compose创建软链sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose查看版本docker-compose --version使用创建 docker-compose.yml创建一个compose文件夹,再创建docker-compose.ymlversion: "1.0" services: redis: image: "redis:alpine" ports: - "6679:6379" # 6679是宿主机端口 6379是redis容器端口 执行docker-compose up -d #加上 -d 是在后台执行查看镜像、容器进入容器docker exec -it [容器ID] redis-cli
2022年02月24日
657 阅读
0 评论
0 点赞
2022-02-24
docker资源网站
资源Docker 官方主页: https://www.docker.comDocker 官方博客: https://blog.docker.com/Docker 官方文档: https://docs.docker.com/Docker Store: https://store.docker.comDocker Cloud: https://cloud.docker.comDocker Hub: https://hub.docker.comDocker 的源代码仓库: https://github.com/moby/mobyDocker 发布版本历史: https://docs.docker.com/release-notes/Docker 常见问题: https://docs.docker.com/engine/faq/Docker 远端应用 API: https://docs.docker.com/develop/sdk/加速镜像阿里云的加速器:https://help.aliyun.com/document_detail/60750.html网易加速器:http://hub-mirror.c.163.com官方中国加速器:https://registry.docker-cn.comustc 的镜像:https://docker.mirrors.ustc.edu.cndaocloud:https://www.daocloud.io/mirror#accelerator-doc
2022年02月24日
202 阅读
0 评论
0 点赞
2022-02-22
docker教程(四)将本地linux系统打包镜像推送到Docker Hub
cd / # Linux-centos.tar 压缩包名称 tar --numeric-owner --exclude=/proc --exclude=/sys -cvf Linux-centos.tar / # linux_centos docker中images的名字 docker import Linux-centos.tar linux_centos # 查看镜像 docker images推送Docker Hub推送命令
2022年02月22日
220 阅读
0 评论
0 点赞
2022-02-22
docker教程(三)Docker Hub 镜像管理(创建推送/拉取/通过容器提交镜像)
通过Docker Hub可以管理自己创建的镜像,方便后续直接使用创建账号打开 https://hub.docker.com/ 创建属于自己的账号docker登录输入用户名和密码进行登录,username为注册账号时输入的用户名#输入命令 docker login #接着输入账户密码 username: password: 推送/拉取镜像#查看镜像 docker images #创建推送 docker tag 镜像ID docker.io/用户名/镜像名 docker push docker.io/用户名/镜像名 #更新推送 docker push 用户名/对应仓库:本地镜像tag名 #通过容器提交镜像 #-a 作者 #-m 说明 # 996ca90ade9d 容器ID # uncleliu:java_docker 镜像REPOSITORY docker commit -a "uncleliu" -m "java" 996ca90ade9d uncleliu:java_docker # uncleliu:java_docker 镜像REPOSITORY # latest 镜像TAG docker push uncleliu/java_docker:latest # 拉取镜像 docker pull 用户名/对应仓库
2022年02月22日
216 阅读
0 评论
0 点赞
1
2
...
6