8.21-部署eleme项目
1.设置主从从mysql57服务器
(1)配置主数据库
[root@msater_5 ~]# systemctl stop firewalld[root@msater_5 ~]# setenforce 0[root@msater_5 ~]# systemctl disable firewalldRemoved symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.[root@msater_5 ~]# lsanaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz[root@msater_5 ~]# tar -xf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz [root@msater_5 ~]# lsanaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64.tar.gzmysql-5.7.44-linux-glibc2.12-x86_64[root@msater_5 ~]# cp -r mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql[root@msater_5 ~]# rm -rf /etc/my.cnf[root@msater_5 ~]# mkdir /usr/local/mysql/mysql-files[root@msater_5 ~]# useradd -r -s /sbin/nologin mysql[root@msater_5 ~]# chown mysql:mysql /usr/local/mysql/mysql-files/[root@msater_5 ~]# chown 750 /usr/local/mysql/mysql-files/[root@msater_5 ~]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql2024-08-21T09:39:14.991434Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).2024-08-21T09:39:15.126969Z 0 [Warning] InnoDB: New log files created, LSN=457902024-08-21T09:39:15.150963Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.2024-08-21T09:39:15.214887Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 3ac52ccc-5fa1-11ef-98a1-000c29374e2c.2024-08-21T09:39:15.215926Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.2024-08-21T09:39:16.034519Z 0 [Warning] A deprecated TLS version TLSv1 is enabled. Please use TLSv1.2 or higher.2024-08-21T09:39:16.034537Z 0 [Warning] A deprecated TLS version TLSv1.1 is enabled. Please use TLSv1.2 or higher.2024-08-21T09:39:16.036321Z 0 [Warning] CA certificate ca.pem is self signed.2024-08-21T09:39:16.384066Z 1 [Note] A temporary password is generated for root@localhost: RV3DtuxCi;A-[root@msater_5 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql57[root@msater_5 ~]# vim /usr/local/mysql/my.cnf[mysqld]basedir=/usr/local/mysqldatadir=/usr/local/mysql/datasocket=/tmp/mysql.sockport=3306log-error=/usr/local/mysql/data/db01-master.errlog-bin=/usr/local/mysql/data/binlogserver-id=10character_set_server=utf8mb4[root@msater_5 ~]# service mysql57 startStarting MySQL.Logging to '/usr/local/mysql/data/db01-master.err'.SUCCESS! [root@msater_5 ~]# /usr/local/mysql/bin/mysql -pEnter password: mysql> alter user 'root'@'localhost' identified by 'root';Query OK, 0 rows affected (0.00 sec)mysql> create user 'zzz'@'%' identified by 'zzz';Query OK, 0 rows affected (0.00 sec)mysql> grant all on *.* to 'zzz'@'%';Query OK, 0 rows affected (0.01 sec)mysql> flush privileges;Query OK, 0 rows affected (0.01 sec)mysql> create user 'slave'@'%' identified by 'slave';Query OK, 0 rows affected (0.00 sec)mysql> grant replication slave on *.* to 'slave'@'%';Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)
(2)配置slave01数据库
[root@slave01_5 ~]# lsanaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz[root@slave01_5 ~]# systemctl stop firewalld[root@slave01_5 ~]# systemctl disable firewalldRemoved symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.[root@slave01_5 ~]# setenforce 0[root@slave01_5 ~]# tar -xf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz [root@slave01_5 ~]# cp -r mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql[root@slave01_5 ~]# rm -rf /etc/my.cnf[root@slave01_5 ~]# mkdir /usr/local/mysql/mysql-files[root@slave01_5 ~]# useradd -r -s /sbin/nologin mysql[root@slave01_5 ~]# chown mysql:mysql /usr/local/mysql/mysql-files/[root@slave01_5 ~]# chown 750 /usr/local/mysql/mysql-files/[root@slave01_5 ~]# yum -y install rsync
(3)配置slave02数据库
[root@slave02_5 ~]# lsanaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz[root@slave02_5 ~]# scp mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz 192.168.2.57:/rootThe authenticity of host '192.168.2.57 (192.168.2.57)' can't be established.ECDSA key fingerprint is SHA256:E2ARFFif/HyOpjlCgDRoPqYSl2OL4PwdcX1h9cPRJiY.ECDSA key fingerprint is MD5:35:b0:cd:3b:e0:fa:10:4a:22:5e:94:aa:b7:5c:e2:79.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '192.168.2.57' (ECDSA) to the list of known hosts.root@192.168.2.57's password: mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz 100% 663MB 85.5MB/s 00:07 [root@slave02_5 ~]# scp mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz 192.168.2.58:/rootThe authenticity of host '192.168.2.58 (192.168.2.58)' can't be established.ECDSA key fingerprint is SHA256:E2ARFFif/HyOpjlCgDRoPqYSl2OL4PwdcX1h9cPRJiY.ECDSA key fingerprint is MD5:35:b0:cd:3b:e0:fa:10:4a:22:5e:94:aa:b7:5c:e2:79.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '192.168.2.58' (ECDSA) to the list of known hosts.root@192.168.2.58's password: mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz 100% 663MB 83.1MB/s 00:07 [root@slave02_5 ~]# systemctl stop firewalld[root@slave02_5 ~]# systemctl disable firewalld[root@slave02_5 ~]# setenforce 0[root@slave02_5 ~]# tar -xf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz [root@slave02_5 ~]# cp -r mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql[root@slave02_5 ~]# rm -rf /etc/my.cnf[root@slave02_5 ~]# mkdir /usr/local/mysql/mysql-files[root@slave02_5 ~]# useradd -r -s /sbin/nologin mysql[root@slave02_5 ~]# chown mysql:mysql /usr/local/mysql/mysql-files/[root@slave02_5 ~]# chown 750 /usr/local/mysql/mysql-files/[root@slave02_5 ~]# yum -y install rsync
(4)同步data
[root@msater_5 ~]# service mysql57 stopShutting down MySQL.... SUCCESS! [root@msater_5 ~]# rm -rf /usr/local/mysql/data/auto.cnf[root@msater_5 ~]# yum -y install rsync[root@msater_5 ~]# rsync -av /usr/local/mysql/data root@192.168.2.58:/usr/local/mysql/[root@msater_5 ~]# rsync -av /usr/local/mysql/data root@192.168.2.59:/usr/local/mysql/
(5)修改slave01配置文件
[root@slave01_5 ~]# ls /usr/local/mysql/bin docs lib man README support-filesdata include LICENSE mysql-files share[root@slave01_5 ~]# vim /usr/local/mysql/my.cnf[mysqld]basedir=/usr/local/mysqldatadir=/usr/local/mysql/datasocket=/tmp/mysql.sockport=3306log-error=/usr/local/mysql/data/err.logrelay-log=/usr/local/mysql/data/relaylogcharacter_set_server=utf8mb4server-id=11[root@slave01_5 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql57[root@slave01_5 ~]# sed -i '$aexport PATH=$PATH:/usr/local/mysql/bin' /etc/profile[root@slave01_5 ~]# source /etc/profile
(6)修改slave02配置文件
[root@slave02_5 ~]# ls /usr/local/mysqlbin docs lib man README support-filesdata include LICENSE mysql-files share[root@slave02_5 ~]# vim /usr/local/mysql/my.cnf[mysqld]basedir=/usr/local/mysqldatadir=/usr/local/mysql/datasocket=/tmp/mysql.sockport=3306log-error=/usr/local/mysql/data/err.logrelay-log=/usr/local/mysql/data/relaylogcharacter_set_server=utf8mb4server-id=12[root@slave02_5 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql57[root@slave02_5 ~]# sed -i '$aexport PATH=$PATH:/usr/local/mysql/bin' /etc/profile[root@slave02_5 ~]# source /etc/profile
(7)主服务器锁表
[root@msater_5 ~]# mysql -prootmysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 3Server version: 5.7.44-log MySQL Community Server (GPL)Copyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> select user,host from mysql.user;+---------------+-----------+| user | host |+---------------+-----------+| slave | % || zzz | % || mysql.session | localhost || mysql.sys | localhost || root | localhost |+---------------+-----------+5 rows in set (0.00 sec)mysql> flush tables with read lock;Query OK, 0 rows affected (0.00 sec)mysql> show master status;+---------------+----------+--------------+------------------+-------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+---------------+----------+--------------+------------------+-------------------+| binlog.000002 | 154 | | | |+---------------+----------+--------------+------------------+-------------------+1 row in set (0.00 sec)
(8)配置主从服务
[root@slave01_5 ~]# mysql -uroot -prootmysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 2Server version: 5.7.44 MySQL Community Server (GPL)Copyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> change master to master_host="192.168.2.57",master_user="slave",master_password="slave",master_log_file="binlog.000002",master_log_pos=154;Query OK, 0 rows affected, 2 warnings (0.01 sec)mysql> start slave;Query OK, 0 rows affected (0.01 sec)mysql> show slave status\G;*************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 192.168.2.57Master_User: slaveMaster_Port: 3306Connect_Retry: 60Master_Log_File: binlog.000002Read_Master_Log_Pos: 154Relay_Log_File: relaylog.000002Relay_Log_Pos: 317Relay_Master_Log_File: binlog.000002Slave_IO_Running: YesSlave_SQL_Running: Yes
(9)配置主从从服务
[root@slave02_5 ~]# mysql -prootmysql> change master to master_host="192.168.2.57",master_user="slave",master_password="slave",master_log_file="binlog.000002",master_log_pos=154;Query OK, 0 rows affected, 2 warnings (0.01 sec)mysql> start slave;Query OK, 0 rows affected (0.01 sec)mysql> show slave status\G;*************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 192.168.2.57Master_User: slaveMaster_Port: 3306Connect_Retry: 60Master_Log_File: binlog.000002Read_Master_Log_Pos: 154Relay_Log_File: relaylog.000002Relay_Log_Pos: 317Relay_Master_Log_File: binlog.000002Slave_IO_Running: YesSlave_SQL_Running: Yes
2.在mysql中添加eleme数据库设置为utf8mb4
[root@msater_5 ~]# mysql -prootmysql> unlock tables;Query OK, 0 rows affected (0.00 sec)mysql> create database if not exists eleme charset utf8mb4;Query OK, 1 row affected (0.00 sec)mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || eleme || mysql || performance_schema || sys || test |+--------------------+6 rows in set (0.00 sec)
3.添加表t_user(master)
mysql> use eleme;Database changedmysql> 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)-> );Query OK, 0 rows affected (0.01 sec)mysql> show tables;+-----------------+| Tables_in_eleme |+-----------------+| t_user |+-----------------+1 row in set (0.00 sec)
4.添加2行记录(master)
mysql> insert into t_user (id,name,username,password,remark)values(1,"超级管理员","adm"in","admin","超级管理员");Query OK, 1 row affected (0.01 sec)mysql> insert into t_user (id,name,username,password,remark)values(2,"普通用户","guest,","guest","普通用户");Query OK, 1 row affected (0.00 sec)mysql> select * from t_user;+----+-----------------+----------+----------+-----------------+| id | name | username | password | remark |+----+-----------------+----------+----------+-----------------+| 1 | 超级管理员 | admin | admin | 超级管理员 || 2 | 普通用户 | guest | guest | 普通用户 |+----+-----------------+----------+----------+-----------------+2 rows in set (0.00 sec)
5.远程登录工具查看表数据:
6.使用mycat为三台数据库设置负载均衡(读写分离)
(1)前期环境部署
[root@mycat ~]# lsanaconda-ks.cfg Mycat-server-1.6.5-release-20180122220033-linux.tar.gzjdk-8u192-linux-x64.tar.gz[root@mycat ~]# tar -xf jdk-8u192-linux-x64.tar.gz [root@mycat ~]# tar -xf Mycat-server-1.6.5-release-20180122220033-linux.tar.gz [root@mycat ~]# cp -r jdk1.8.0_192/ /usr/local/jdk[root@mycat ~]# cp -r mycat/ /usr/local/mycat[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[root@mycat ~]# javac -versionjavac 1.8.0_192[root@mycat ~]# /usr/local/mycat/bin/mycat console
(2)修改server.xml配置文件
[root@mycat ~]# vim /usr/local/mycat/conf/server.xml93 <user name="haha" defaultAccount="true">94 <property name="password">haha</property>95 <property name="schemas">eleme</property># 注释107 <!--108 <user name="user">109 <property name="password">user</property>110 <property name="schemas">TESTDB</property>111 <property name="readOnly">true</property>112 </user>113 -->
(3)修改schema.xml 配置文件
1.设置schema标签 添加dataNode="xxx" name=eleme
2.修改dataHost标签
[root@mycat ~]# vim /usr/local/mycat/conf/schema.xml 1 <?xml version="1.0"?>2 <!DOCTYPE mycat:schema SYSTEM "schema.dtd">3 <mycat:schema xmlns:mycat="http://io.mycat/">4 5 <schema name="eleme" dataNode="dn1" checkSQLschema="false" sqlMaxLimit="10 0"> 6 </schema>7 <!-- <dataNode name="dn1$0-743" dataHost="localhost1" database="db$0-743"8 /> -->9 <dataNode name="dn1" dataHost="localhost1" database="eleme" />10 <!-- <dataNode name="dn2" dataHost="localhost1" database="db2" />11 <dataNode name="dn3" dataHost="localhost1" database="db3" />-->12 <!--<dataNode name="dn4" dataHost="sequoiadb1" database="SAMPLE" />13 <dataNode name="jdbc_dn1" dataHost="jdbchost" database="db1" />14 <dataNode name="jdbc_dn2" dataHost="jdbchost" database="db2" />15 <dataNode name="jdbc_dn3" dataHost="jdbchost" database="db3" /> -->16 <dataHost name="localhost1" maxCon="1000" minCon="10" balance="0" 17 writeType="0" dbType="mysql" dbDriver="native" switchTyp e="1" slaveThreshold="100">18 <heartbeat>select user()</heartbeat>19 <!-- can have multi write hosts -->20 <writeHost host="hostM1" url="192.168.2.57:3306" user="haha"21 password="haha">22 <!-- can have multi read hosts --> 23 <readHost host="hostS2" url="192.168.2.58:3306" user="haha " password="haha" /> 24 <readHost host="hostS3" url="192.168.2.59:3306" user="haha " password="haha" />25 </writeHost>26 <!--27 <writeHost host="hostS1" url="localhost:3316" user="root"28 password="123456" />29 --> 30 <!-- <writeHost host="hostM2" url="localhost:3316" user="root" pas sword="123456"/> -->31 </dataHost>
(4)启动服务
[root@mycat ~]# /usr/local/mycat/bin/mycat startStarting Mycat-server...[root@mycat ~]# netstat -lntup | grep 8066tcp6 0 0 :::8066 :::* LISTEN 1916/j
7.客户端测试mycat
[root@client ~]# cd /usr/local/mysql/bin[root@client bin]# ./mysql -h192.168.2.19 -P8066 -uhaha -phahamysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 83Server version: 5.6.29-mycat-1.6.5-release-20180122220033 MyCat Server (OpenCloundDB)Copyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show databases;+----------+| DATABASE |+----------+| eleme |+----------+1 row in set (0.01 sec)mysql> use eleme;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedmysql> show tables;+-----------------+| Tables_in_eleme |+-----------------+| t_user |+-----------------+1 row in set (0.01 sec)mysql> select * from t_user;+----+-----------------+----------+----------+-----------------+| id | name | username | password | remark |+----+-----------------+----------+----------+-----------------+| 1 | 超级管理员 | admin | admin | 超级管理员 || 2 | 普通用户 | guest | guest | 普通用户 |+----+-----------------+----------+----------+-----------------+2 rows in set (0.01 sec)mysql>
8.部署java17环境
(1)java01
[root@java01 ~]# lsanaconda-ks.cfg jdk-17_linux-x64_bin.tar.gz [root@java01 ~]# tar -xf jdk-17_linux-x64_bin.tar.gz [root@java01 ~]# lsanaconda-ks.cfg jdk-17.0.12 jdk-17_linux-x64_bin.tar.gz [root@java01 ~]# cp -r jdk-17.0.12/ /usr/local/jdk[root@java01 ~]# vim /etc/profileexport JAVA_HOME=/usr/local/jdkexport PATH=$PATH:$JAVA_HOME/bin[root@java01 ~]# source /etc/profile[root@java01 ~]# javac --versionjavac 17.0.12[root@java01 ~]# firewall-cmd --add-port=8080/tcp --permanentsuccess[root@java01 ~]# firewall-cmd --reloadsuccess[root@java01 ~]# lsanaconda-ks.cfg application_(1).yml eleme_server-0.0.1-SNAPSHOT.jar jdk-17.0.12 jdk-17_linux-x64_bin.tar.gz[root@java01 ~]# mv application_\(1\).yml application.yml [root@java01 ~]# lsanaconda-ks.cfg application.yml eleme_server-0.0.1-SNAPSHOT.jar jdk-17.0.12 jdk-17_linux-x64_bin.tar.gz[root@java01 ~]# vim application.yml server:port: 8080spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://192.168.2.19:8066/elemeusername: hahapassword: haha[root@java01 ~]# java -jar eleme_server-0.0.1-SNAPSHOT.jar
(2)浏览器访问:192.168.2.11:8080
(3)java02
[root@java02 ~]# lsanaconda-ks.cfg eleme_server-0.0.1-SNAPSHOT.jar jdk-17_linux-x64_bin.tar.gzapplication.yml [root@java02 ~]# tar -xf jdk-17_linux-x64_bin.tar.gz [root@java02 ~]# cp -r jdk-17.0.12/ /usr/local/jdk[root@java02 ~]# vim /etc/profile[root@java02 ~]# source /etc/profile[root@java02 ~]# javac -versionjavac 17.0.12[root@java02 ~]# vim application.yml server:port: 8080spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://192.168.2.19:8066/elemeusername: hahapassword: haha[root@java02 ~]# java -jar eleme_server-0.0.1-SNAPSHOT.jar
(4)浏览器访问:192.168.2.12:8080
9.部署LVS-nat模式
(1)lvs
[root@lvs ~]# ifconfig ens33:0 192.168.2.150 broadcast 192.168.2.121 netmask 255.255.255.255 up[root@lvs ~]# route add -host 192.168.2.150 dev ens33:0[root@lvs ~]# yum -y install ipvsadm[root@lvs ~]# ipvsadm -C[root@lvs ~]# ipvsadm -A -t 192.168.2.150:8080 -s rr[root@lvs ~]# ipvsadm -a -t 192.168.2.150:8080 -r 192.168.2.11 -g[root@lvs ~]# ipvsadm -a -t 192.168.2.150:8080 -r 192.168.2.12 -g[root@lvs ~]# systemctl stop firewalld[root@lvs ~]# systemctl disable firewalldRemoved symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.[root@lvs ~]# setenforce 0[root@lvs ~]# systemctl stop firewalld[root@lvs ~]# ipvsadm -LnIP Virtual Server version 1.2.1 (size=4096)Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port Forward Weight ActiveConn InActConnTCP 192.168.2.150:8080 rr-> 192.168.2.11:8080 Route 1 0 1 -> 192.168.2.12:8080 Route 1 0 1
(2)java01
[root@java01 ~]# ifconfig lo:0 192.168.2.150 broadcast 192.168.2.150 netmask 255.255.255.255 up[root@java01 ~]# route add -host 192.168.2.150 dev lo:0[root@java01 ~]# vim arp.sh[root@java01 ~]# source arp.sh
(3)java02
[root@java02 ~]# ifconfig lo:0 192.168.2.150 broadcast 192.168.2.150 netmask 255.255.255.255 up[root@java02 ~]# route add -host 192.168.2.150 dev lo:0[root@java02 ~]# vim arp.sh[root@java02 ~]# source arp.sh
(4)浏览器访问:192.168.2.150:8080(外网地址)
相关文章:
![](https://i-blog.csdnimg.cn/direct/38282a6194bb433ca2647379e8f8da2f.png)
8.21-部署eleme项目
1.设置主从从mysql57服务器 (1)配置主数据库 [rootmsater_5 ~]# systemctl stop firewalld[rootmsater_5 ~]# setenforce 0[rootmsater_5 ~]# systemctl disable firewalldRemoved symlink /etc/systemd/system/multi-user.target.wants/firewalld.serv…...
![](https://i-blog.csdnimg.cn/direct/83df833a5953467eb42445fe62549d7c.png)
多目标跟踪之ByteTrack论文(翻译+精读)
ByteTrack:通过关联每个检测框进行多对象跟踪 摘要 翻译 多对象跟踪(MOT)旨在估计视频中对象的边界框和身份。大多数方法通过关联分数高于阈值的检测框来获取身份。检测分数低的物体,例如被遮挡的物体被简单地丢弃,…...
![](https://www.ngui.cc/images/no-images.jpg)
【实践】Java开发常用工具类或中间件
在Java开发中,有许多常用的工具类和中间件,它们可以显著提高开发效率,简化代码,并提供强大的功能。这些工具类和中间件广泛应用于各种类型的Java应用程序中,包括Web应用、企业级应用、微服务等。以下是一些在Java开发中…...
![](https://i-blog.csdnimg.cn/direct/d0afa9ef4e2d4da0ac0a550928546a22.gif)
Vue2移动端(H5项目)项目封装车牌选择组件
一、最终效果 二、参数配置 1、代码示例: <t-keyword:isShow"isShow"ok"isShowfalse"cancel"isShowfalse"inputchange"inputchange":finalValue"trailerNo"/>2、配置参数(TKeyword Attribute…...
![](https://i-blog.csdnimg.cn/direct/06b493acb4314424b38d196e13660176.png)
四川财谷通信息技术有限公司抖音小店的优势
在数字化浪潮的推动下,电商行业迎来了前所未有的发展机遇,而抖音小店作为新兴的电商平台,凭借其独特的社交属性和便捷的购物体验,迅速赢得了广大消费者的青睐。在众多抖音小店中,四川财谷通信息技术有限公司旗下的抖音…...
![](https://www.ngui.cc/images/no-images.jpg)
2025届八股文:计算机网络高频重点面试题
鉴于排版复杂且篇幅过长,本文仅列举出问题,而未给出答案,有需要答案的同学可后台私信。整理总结不易,请尊重劳动成果,转载请注明出处。 目录 网络基础 HTTP TCP UDP IP PING WebSocket DNS 网络安全 网络基础…...
![](https://i-blog.csdnimg.cn/direct/4a58890656a94b28b8f3574f7a17adc1.png)
嵌入式和单片机有什么区别?
目录 (1)什么是嵌入式? (2)什么是单片机? (3)嵌入式和单片机的共同点 (4)嵌入式和单片机的区别 (1)什么是嵌入式? 关…...
![](https://www.ngui.cc/images/no-images.jpg)
JSON.stringify 和 JSON.parse
JSON.stringify 是一个将 JavaScript 对象转换为 JSON 字符串的方法,它有三个参数: JSON.stringify(value, replacer, space) 参数详解 value (必需): 这是你想要转换为 JSON 字符串的 JavaScript 对象或数组。例如:…...
![](https://i-blog.csdnimg.cn/direct/87f3209a48804ab78cab7de13fa25cfb.png)
APP架构设计_2.用MVVM架构实现一个具体业务
2.MVVM架构图 3.MVVM 实现一个具体业务 3.1 界面层的实现 界面层实现时,需要遵循以下几点。 1)选择实现界面的元素 界面元素可以用 view 或 compose 来实现,这里用 view 实现。 2)提供一个状态容器 这里使用 ViewModel 作为状态容…...
![](https://img-blog.csdnimg.cn/img_convert/3f405aee251b5f6b2bf7b6960267d39e.webp?x-oss-process=image/format,png)
安恒信息总裁宋端智,辞职了!活捉一枚新鲜出炉的餐饮人!
吉祥知识星球http://mp.weixin.qq.com/s?__bizMzkwNjY1Mzc0Nw&mid2247485367&idx1&sn837891059c360ad60db7e9ac980a3321&chksmc0e47eebf793f7fdb8fcd7eed8ce29160cf79ba303b59858ba3a6660c6dac536774afb2a6330#rd 《网安面试指南》http://mp.weixin.qq.com/s?…...
![](https://i-blog.csdnimg.cn/direct/5c6f1cf926ba4be7bf17c9db747eb75d.png)
《javaEE篇》--定时器
定时器概念 当我们不需要某个线程立刻执行,而是在指定时间点或指定时间段之后执行,假如我们要定期清理数据库里的一些信息时,如果每次都手动清理的话就太麻烦,所以就可以使用定时器。定时器就可以比作一个闹钟,可以让…...
![](https://i-blog.csdnimg.cn/direct/bb210aef5d1d4b128d48fb54befcd5ad.png)
OpenLayers3, 缩放、平移、复位操作
文章目录 一、前言二、代码示例 一、前言 本文基于OpenLayers3实现地图缩放、平移和复位操作 二、代码示例 <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htm…...
![](https://i-blog.csdnimg.cn/direct/e0c89e033e2142d392b075dd375e7a3d.png)
进程与线程(7)
IPC通信方式: 一、共享内存 system v : 共享内存 是一块,内核预留的空间 最高效的通信方式 (避免了用户空间 到 内核空间的数据拷贝) 二、IPC对象操作通用框架: key值 > 申请 》读写 》关闭 》卸载 1.ftok函数:…...
![](https://i-blog.csdnimg.cn/direct/f8d40c9a6c1b47b0a7625d4447765075.png)
传知代码-自动化细胞核分割与特征分析(论文复现)
代码以及视频讲解 本文所涉及所有资源均在传知代码平台可获取 引言 细胞核分割和分类在医学研究和临床诊断中具有重要意义。精准的细胞核分割能够帮助医生更好地识别和分析细胞核的形态学特征,从而辅助疾病诊断、癌症检测以及药物研发。HoverNet是一种基于深度学…...
![](https://i-blog.csdnimg.cn/direct/85bd16d24ad74889b0702ae0535ed35f.gif#pic_center)
Vue UI - 可视化的Vue项目管理器
概述 Vue CLI 3.0 更新后,提供了一套全新的可视化Vue项目管理器 —— Vue UI。所以要想使用它,你的 Vue CL I版本必须要在v3.0以上。 一、启动Vue UI 1.1 环境准备 1.1.1 安装node.js 访问官网(外网下载速度较慢)或 http://nod…...
![](https://www.ngui.cc/images/no-images.jpg)
团队管理之敏捷开发
一、敏捷实践 敏捷开发中一直秉承的理念和宣言是:我们正在通过亲身实践以及帮助他人实践,揭示更好的软件开发方法。通过这项工作,我们认为:个体和交互胜过过程和工具、可以工作的软件胜过面面俱到的文档、客户合作胜过合同谈判、…...
![](https://www.ngui.cc/images/no-images.jpg)
Hive3:表的常用修改语句
1、表重命名 ALTER TABLE old_table_name RENAME TO new_table_name;如: ALTER TABLE score4 RENAME TO score5;2、修改表属性值 ALTER TABLE table_name SET TBLPROPERTIES table_properties; table_properties:: (property_name property_value, property…...
![](https://img-blog.csdnimg.cn/img_convert/12ff0d007299cf7c1d87a5d60800678b.png)
MidJourney付费失败的原因以及失败后如何取消或续订(文末附MidJourney,GPT-4o教程)
MidJourney付费失败的原因 MidJourney付费失败的原因可能包括支付方式无效、支付信息错误、网络问题、账户设置问题等。 支付方式无效或信息错误:如果用户提供的支付方式(如信用卡)信息不正确,或者支付方式本身不支持该地区…...
![](https://i-blog.csdnimg.cn/direct/8c8d81697dcc4b7db67f14d01bb3dc75.jpeg)
PHP安全开发
安全开发 PHP 基础 增:insert into 表名(列名 1, 列名 2) value(‘列 1 值 1’, ‘列 2 值 2’); 删:delete from 表名 where 列名 ‘条件’; 改:update 表名 set 列名 数据 where 列名 ‘条件’; 查:select * from 表名 wher…...
![](https://i-blog.csdnimg.cn/direct/e5c7d8602d21454e9cc83873ee7851c3.jpeg#pic_center)
【大模型从入门到精通32】开源库框架LangChain RAG 系统中的问答技术2
这里写目录标题 探索高级问答链类型MapReduce 和 Refine 技术 实用建议和最佳实践解决 RetrievalQA 限制结论进一步阅读和探索理论问题实践问题 探索高级问答链类型 MapReduce 和 Refine 技术 MapReduce 和 Refine 是设计用来规避由语言模型 (LM) 上下文窗口大小所导致的限制…...
![](https://www.ngui.cc/images/no-images.jpg)
MySQL 数据库管理
在 MySQL 中,数据库管理是非常基础但又至关重要的技能。无论是创建新的数据库、选择当前使用的数据库,还是查看数据库的相关信息,这些操作都是日常数据库管理中不可或缺的一部分。本文将详细介绍 MySQL 数据库管理的基本操作,包括…...
![](https://i-blog.csdnimg.cn/direct/1621aace177c46f684b7ea9f4585f25e.png)
屏幕录制了一个视频,发现有些部分是不需要的,那么我们就用到视频剪辑的工具,利用必剪去删除中间的一部分视频,并且导出,然后利用格式工厂去压缩mp4文件的过程。
1、我们经常会去做一些视频教程或者软件的使用说明等等,做完了以后,会有增加字幕,或者去掉不需要一段视频。 2、打开必剪软件 3、点击【开始制作】 先将视频拖动到1的位置,然后将播放区中的视频,拖到2的区域ÿ…...
![](https://www.ngui.cc/images/no-images.jpg)
代码随想录跟练第六天——LeetCode
第454题.四数相加II 力扣题目链接(opens new window) 给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] B[j] C[k] D[l] 0。 为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤…...
![](https://i-blog.csdnimg.cn/direct/b82d7b64ead24644af0bc5cb52072b5e.png)
【Qt】常用控件QCalendarWidget的使用
常用控件QCalendarWidget的使用 QCalendarWidget表示一个日历 核心属性 属性说明 selectDate 当前选中的⽇期 minimumDate 最⼩⽇期 maximumDate 最⼤⽇期 firstDayOfWeek 每周的第⼀天(也就是⽇历的第⼀列) 是周⼏. gridVisible 是否显⽰表格的边框 selectionMode…...
![](https://i-blog.csdnimg.cn/direct/20c62dba21d944549a8911688066c0ad.png)
Nginx: 配置项之main段核心参数用法梳理
概述 我们了解下配置文件中的一个全局段,有哪些配置参数,包括后面的 events 字段,有哪些配置参数这里面也有一些核心参数, 对于我们Nginx运行的性能也是有很重要的帮助我们现在首先关注整个 main 段的一个核心参数用法所谓 main 段ÿ…...
![](https://www.ngui.cc/images/no-images.jpg)
密码学之RSA算法
文章目录 1. RSA算法介绍1.2 算法历史与发展1.3 算法应用场景 2. RSA密钥生成2.1 选择素数2.2 计算公钥和私钥2.3 密钥长度与安全性 3 算法原理3.1 加密原理3.2 加密方法3.3 加密示例3.4 代码实现 4. 总结 1. RSA算法介绍 1.2 算法历史与发展 RSA算法由Ron Rivest、Adi Shami…...
![](https://i-blog.csdnimg.cn/direct/63a26d67c32f42fbaa2c698d29f04422.png)
教你学习企业高性能web服务器-nginx
一、web服务介绍 1、Apache的三种模型 (1)Apache prefork 预派生模式,有一个主控制进程,然后生成多个子进程,使用select模型,最大并发1024每个子进程有一个独立的线程响应用户请求相对比较占用内存&…...
![](https://i-blog.csdnimg.cn/direct/4ae205365bd54dd2a7904b5c508484fd.png)
封装通用第三方平台用户表(微信开放平台)
文章目录 一. 注册微信开放平台1.1 开发者资质认证1.2 应用申请1.3 配置应用 二.通用数据库表设计三.入库实体类四. 对接第三方平台4.1 微信开放平台VO对象4.2 通用方法 我们的系统可能要对接很多第三方系统,为了便利用户授权使用和对多平台账户的管理。有必要设计通…...
![](https://i-blog.csdnimg.cn/direct/d408b364e79d448593455ec5c37ee565.png)
【C++】_string类字符串详细解析(1)
假如没有给你生命,你连失败的机会都没有。你已经得到了最珍贵的,还需要抱怨什么!💓💓💓 目录 ✨说在前面 🍋知识点一:什么是string? •🌰1.string类的概念 •…...
![](https://i-blog.csdnimg.cn/direct/e9b1b9e71ba3444a80f50bc58344e536.png)
【Linux】——进程概念(万字解读)
一 冯诺依曼体系结构 在此之前,我们先要理解我们计算机的冯诺依曼体系结构,因为是进程的基础 我们所有的操作其实都是基于这样一个模型,比如你在qq上,和别人发送消息,这个消息肯定是先通过输入设备进行输入…...
![](/images/no-images.jpg)
网络推广计划书格式/网站seo快速优化技巧
一、 临时表空间理论 在9i之前,如果一个数据库用户没有被指定默认临时表空间,那么oracle就会使用system表空间作为该用户的临时表空间,这是很危险的。在9i里面,database可以被指定一个默认临时表空间。这样如果数据库用户没有被明…...
![](/images/no-images.jpg)
切图做网站/二次感染即将大爆发
传送门 题意:有个房间,房间的值用四面的门加起来的值表示,非常巧妙,西门用1表示,北门用2表示,东门用4表示,南门用8表示,最后判断是否连通的方法使用&,非常巧妙。 题…...
![](http://www.ha97.com/wp-content/uploads/image/2010/09/112544yU3.gif)
南昌网站设计制作/百度平台客服电话是多少
过去一年中,花了很多时间在考虑服务器架构设计方面的问题。看了大量文章、也研究了不少开源项目,眼界倒是开阔了不少,不过回过头来看,对网游架构设计方面的帮助却是不多。老外还是玩儿console game的多,MMO Games方面涉…...
![](/images/no-images.jpg)
音乐网站的建设/seo技术培训教程视频
很遗憾,systemc官方提供的SDK并不能直接在 mac os x 下用 gcc编译链接。 需要做如下 修改 : 1、为configure添加编译环境支持,简单的说,就是修改config/config.sub,加入i686-apple-darwin10编译环境。不同操作系统版本…...
![](http://www.cqeis.com/imageRepository/ed15dafa-76f3-42be-9476-2a6f2ad1f253.jpg)
b2b网站怎么做推广/百度平台投诉人工电话
作者:诚恺科技来源:http://www.cqeis.com我们都知道,华为是以通信产品起家的,所以华为交换机、路由器、防火墙等网络通信产品在全球都处于领先地位,而华为交换机的型号及类别各不同,比如LI、SI、EI、HI等型…...
做外贸平台还是网站/杭州网站设计制作
机房收费系统有报表的功能,报表对于我们来说有点陌生。这不是会计的事吗?怎么机房收费系统也參合进来了,事实上我们学会了报表的步骤。理解了代码后。报表变得不是非常难,世上无难事,仅仅怕肯登攀吗!以下是…...