上线eleme项目

news2025/1/10 11:56:25

(一)搭建主从从数据库

主服务器master

首先下载mysql57安装包,然后解压

复制改目录到/usr/local底下并且改个名字

cp -r mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql

删掉/etc/my.cnf   这个会影响mysql57的启动

rm -rf /etc/my.cnf

创建files目录

mkdir /usr/local/mysql/mysql-files

创建mysql用户

useradd -r -s /sbin/nologin mysql

修改files的权限

chown mysql:mysql /usr/local/mysql/mysql-files/

chmod 750 /usr/local/mysql/mysql-files/

初始化并且查看mysql登录的初始密码

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql

看到data文件证明初始化成功

为了便捷,cp一下support-files/mysql.server并且改个名字方便启动

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql57

启动mysql

service mysql57 start

出现success即成功

创建my.cnf文件

vim /usr/local/mysql/my.cnf

[mysqld]

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

port=3306

log-error=/usr/local/mysql/data/db01-master.err

log-bin=/usr/local/mysql/data/binlog

server-id=10

character_set_server=utf8mb4

重新启动

先start再restart

再修改profile环境文件,方便登录mysql

[root@master ~]# sed -i '$aexport PATH=/usr/local/mysql/bin:$PATH' /etc/profile

[root@master ~]# source /etc/profile

这里输入前面的初始化密码即可进

进去之后先改密码

set password='1';

再登录验证发现没有问题

创建数据库eleme

create database if not exists eleme charset utf8mb4;

再使用它

use eleme;

创建表,t_user

create table t_user(id int primary key auto_increment,name varchar(45) not null,username varchar(45) not null,password varchar(45) not null,remark varchar(45) not null);

再查看

desc t_user;

向表中添加数据

 insert into t_user (id,name,username,password,remark)values("1","超级管理员","admin","admin","超级管理员");

insert into t_user (id,name,username,password,remark)values("2","普通用户","guest","guest","普通用户");

再查看

select * from t_user;

为从服务器添加用户

create user 'slave01'@'%' identified by '1';

create user 'slave02'@'%' identified by '1';

grant replication slave on *.* to 'slave01'@'%';

grant replication slave on *.* to 'slave02'@'%';

flush privileges;

在master中锁表,然后查看⼆进制⽂件和位置

flush tables with read lock;

show master status;

从服务器slave01

先下载mysql57包,从master传过来就可以了

scp root@192.168.1.21:~/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz ./

再解压

tar -xvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz

复制目录到/usr/local底下

cp -r mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql

在master和slave上下载rsync同步数据,但是要删掉master目录下的一个文件,如下图

删除圈出来的

rm -rf auto.cnf

yum -y install rsync

在主服务器上

rsync -av /usr/local/mysql/data root@192.168.1.22:/usr/local/mysql/

然后去从查看有无data

然后做下面的操作

rm -rf /etc/my.cnf

mkdir /usr/local/mysql/mysql-files

useradd -r -s /sbin/nologin mysql

chown mysql:mysql /usr/local/mysql/mysql-files/

chmod 750 /usr/local/mysql/mysql-files/

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql57

service mysql57 start

配置文件中是

[mysqld]

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

port=3310

log-error=/usr/local/mysql/data/db01-slave.err

relay-log=/usr/local/mysql/data/relaylog

server-id=11

character_set_server=utf8mb4

然后再重启

修改环境变量

sed -i '$aexport PATH=/usr/local/mysql/bin:$PATH' /etc/profile

source /etc/profile

连接数据库

mysql -uroot -p

在从服务器中,使⽤change master to 指定主服务器,并实现数 据同步

 change master to

    -> master_host='192.168.1.21',

    -> master_user='slave01',

    -> master_password='1',

    -> master_port=3306,

    -> master_log_file='binlog.000002',

-> master_log_pos=2594;

start slave;

show slave status\G;

发现是连接状态

然后退出mysql去远程连接,获得公钥

再尝试一遍

mysql -uslave01 -p1 -h 192.168.1.21 -P3306 --get-server-public-key

进去之后直接退出来

然后mysql -uroot -p

验证同步数据

也没有问题

从服务器slave02

道理和slave01一样,按步骤来就完成了

验证也没有问题

(二)Mycat配置

首先下载并且解压安装包

然后复制目录并且改名

[root@mycat ~]# cp -r jdk1.8.0_192/ /usr/local/jdk

[root@mycat ~]# cp -r mycat/ /usr/local/

查看并且配置jdk环境

[root@mycat ~]# sed -i '$aexport JAVA_HOME=/usr/local/jdk' /etc/profile

[root@mycat ~]# source /etc/profile

[root@mycat ~]# sed -i '$aexport PATH=$PATH:$JAVA_HOME/bin' /etc/profile

[root@mycat ~]# source /etc/profile

配置文件

vim /usr/local/mycat/conf/server.xml

“ln”是master创建用于被访问的

去master机器创建

create user 'ln'@'%' identified by '1';

grant all on *.* to 'ln'@'%';

flush privileges;

vim /usr/local/mycat/conf/schema.xml

启动服务

/usr/local/mycat/bin/mycat start

检查启动的是否成功

root@mycat ~]# netstat -lnput|grep 8066

tcp6       0      0 :::8066                 :::*                    LISTEN      4547/java  

开启8080端口和3310端口

firewall-cmd --zone=public --add-port=8080/tcp --permanent

firewall-cmd --zone=public --add-port=3310/tcp --permanent

firewall-cmd --reload

(三)搭建Java_static

下载下图软件包并且解压jdk包

解压完成以后cp   jdk  目录,复制到/usr/local底下

cp -r jdk-17.0.12/ /usr/local/jdk

再部署环境变量

vim /etc/profile

检验Java版本

然后创建一个文件

vim application.yml

再上传一个包直接用Java运行它

java -jar eleme_server-0.0.1-SNAPSHOT.jar

然后去浏览器访问Java_static的地址加8080端口

账户密码都用admin测试

就成功登录进来了

(四) 使⽤lvs代理java服务

(1)ds

1. 挂载vip

ifconfig ens33:0 192.168.1.41 broadcast 192.168.1.41 netmask 255.255.255.255 up

2. 为vip添加路由

route add 192.168.1.41 dev ens33:0

3. 安装ipvsadm

yum -y install ipvsadm

ipvsadm -Ln

ipvsadm -C

4. 设置负载均衡规则

ipvsadm -A -t 192.168.1.41:8080 -s rr

ipvsadm -a -t 192.168.1.41:8080 -r

192.168.1.26 -g

ipvsadm -a -t 192.168.1.41:8080 -r

192.168.1.27 -g

(2)rs

1. 挂载vip

ifconfig lo:0 192.168.1.41 broadcast 192.168.1.41 netmask 255.255.255.255 up

2. 为vip 添加路由

route add 192.168.1.41 dev lo:0

3. 抑制接受请求

echo 1 >

/proc/sys/net/ipv4/conf/lo/arp_ignore

echo 2 >

/proc/sys/net/ipv4/conf/lo/arp_announce

echo 1 >

/proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 >

/proc/sys/net/ipv4/conf/all/arp_announce

(五)Nginx 代理端⼝

upstream javagroup {

Server localhost:8080 weight=95;

Server 192 168.71.15:8080 weight=3

Server 192.168.71.16:8080 weight=2;

}

进入配置文件修改下图内容

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2065294.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

浪潮服务器主板集成RAID常见问题

★主板集成RAID出现Initialize初始化,如下图 判断及解决方案: 1.机器是否有过插拔硬盘等操作。 2.系统初始化-系统启动会非常的慢。一般为非法关机或者断电导致。 3.出现此情况耐心等待磁盘初始化完成即可。系统初始化时间以具体的数据大小来决定&#…

CLion IDE用MSVC和cmake编译darknet(带GPU)

这个配置教程给用过pytorch,懂得深度学习代码的基本流程,但又不熟悉windows c开发环境的宝子们使用。 安装CUDA,CUDNN 一般都有,不说了。注意上nvidia官网看一下显卡架构,后面要用,比如我的丽台M2000架构…

从零开始Dify本地部署|Windows

参考官方文档部署 Dify本地源码启动 windows最好结合WSL使用,懒得配置WSL,就是硬肝! 1.Clone Dify 代码 先找到项目GitHub 开源链接clone 下来,使用docker部署运行(Windows配置docker环境这里不赘述) gi…

Prometheus Alertmanager告警之邮件、钉钉群、企业微信群机器人报警

文章目录 一、部署alertmanager相关组件1.alertmanager-config2.alertmanager-message-tmpl3.alertmanager 二、调试邮件告警三、钉钉群/企业微信群 报警3.1添加钉钉群机器人3.2添加企业微信群机器人3.3部署alertmanager-webhook-adaptermessage-tmplalertmanager-webhook-adap…

Windows环境下,使用bat脚本配置本地域名解析(含新增、修改、清理)

适用场景: 1.内部不存在DNS服务器的客户; 2.客户电脑不知道前期是否过某域名的本地解析。 整体思路: 1.备份原始hosts配置文件; 2.将hosts配置文件中包含xxxxxxxxxx.com域名的解析清空; 3.写入正确的解析到hosts配置文…

发布MindSearch到ModelScope创空间

一、创建空间 1.点击【我要创建】来创建一个应用 2.填写完基础信息 会出现一个未发布的应用 二、上传代码 1.参照当前页的指示一步一步将MindSearch部署需要的文件上传到指定的repo即可 2.在当前页点击【空间文件】查看刚才通过命令上传的文件 三、上线应用 1.点击【设置】可…

【论文阅读】A Closer Look at Parameter-Efficient Tuning in Diffusion Models

Abstract 大规模扩散模型功能强大,但微调定制这些模型,内存和时间效率都很低。 本文通过向大规模扩散模型中插入小的学习器(称为adapters),实现有效的参数微调。 特别地,将适配器的设计空间分解为输入位置、输出位置、函数形式的…

什么是ConcurrentHashMap?实现原理是什么?

什么是ConcurrentHashMap?实现原理是什么? 在多线程环境下,使用HashMap进行put操作时存在丢失数据的情况,为了避免这种bug的隐患,强烈建议使用ConcurrentHashMap代替HashMap。 HashTable是一个线程安全的类&#xff…

HashMap是线程安全的吗?为什么呢?

HashMap是线程安全的吗?为什么呢? HashMap是线程不安全的! 线程不安全体现在JDK.1.7时在多线程的情况下扩容可能会出现死循环或数据丢失的情况,主要是在于扩容的transfer方法采用的头插法,头插法会把链表的顺序给颠倒…

【亲测有效】JS Uncaught TypeError: [function] is not a constructor

【亲测有效】JS Uncaught TypeError: [function] is not a constructor 在JavaScript编程中,Uncaught TypeError: [function] is not a constructor 是一个相对常见的错误,通常发生在尝试使用某个值作为构造函数,但实际上它不是构造函数的情况…

鸿蒙卡片服务开发

首先先创建一个项目 在该项目下创建一个卡片服务 在module.json5文件下配置 {"module": {..."extensionAbilities": [{"name": "EntryFormAbility","srcEntry": "./ets/entryformability/EntryFormAbility.ets",…

Linux文件操作:文件描述符fd

文章目录 前言:回顾一下文件提炼一下关于文件的理解: 理解文件:通过系统调用操作文件:理解标志位传参:打开文件 open写入信息 write 理解文件描述符:对于open的返回值:文件描述fd的本质是什么呢…

设计模式之Decorator装饰者、Facade外观、Adapter适配器(Java)

装饰者模式 设计模式的基本原则,对内关闭修改。 Decorator Pattern,装饰者模式,也叫包装器模式(Wrapper Pattern):将一个对象包装起来,增加新的行为和责任。一定是从外部传入,并且可以没有顺序&#xff0…

Qml 实现仿前端的 Notification (悬浮出现页面上的通知消息)

【写在前面】 经常接触前端的朋友应该经常见到下面的控件: 在前端中一般称它为 Notification 或 Message,但本质是一种东西,即:悬浮弹出式的消息提醒框。 这种组件一般具有以下特点: 1、全局/局部显示:它不…

基于单片机的信号发生器设计

本设计采用了STM32F103C8T6单片机作为控制核心,通过控制DDS模块产生不同频率且高稳定和低失真的信号,再通过放大电路对信号的幅值进行放大。此外通过按键可以使用户对频率进行调节以及对输出波形进行切换,由于AD9833输出的幅值是固定的&#…

启动docker镜像

1、运行容器 2、当前运行的进程 3、当前位置和启动时间 4、cat/etc/redhat-release查看版本 5.镜像是模版,容器是实例 6.容器中没有命令运 7.容器总是能轻易获取 8.配置yum 9.安装http 10.修改index⽂件 11.httpd -k start 12.访问 13.退出就没有服务了 14…

细谈LCM驱动电压VGHVGL电路原理

前言: ***在液晶显示屏驱动电路中,VGH电压负责对TFT栅极电容进行充电开启,并使电容电压保持一个场周期,VGL电压负责TFT栅极的关闭。 如果VGH和VGL电压出现不稳或者幅度变化,都会引起图像显示故障,例如花屏…

委托发布 | 进迭时空联合移动云能力中心实现业界首个RISC-V IO虚拟化方案

仟江水商业电讯(8月22日 北京 委托发布)虚拟化是云计算技术基石,是RISC-V走进云计算等高性能计算场景的必然要求。RISC-V国际基金会2021年制定了Hypervisor 1.0规范,2023年制定了AIA 1.0规范和IOMMU 1.0规范,这3个规范…

CentOS 7使用RPM安装MySQL5.7

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言1:下载MySQL5.7的rpm安装包2:卸载已安装的MySQL(没安装过则跳过)3:MySQL安装环境准备4:安…

网络竞赛可视化:打造线上赛事

通过图扑网络竞赛可视化,可以实时跟踪和分析参赛者的表现,直观展示比赛进程和结果。这不仅提高了观赛体验,还帮助组织者更有效地管理和优化赛事。