lt 3 months ago
parent
commit
7ad0ba754b

+ 79 - 0
操作命令/etcd 查看数据.txt

@@ -0,0 +1,79 @@
+查看版本
+[root@VM-4-2-centos wwwlogs]# ETCDCTL_API=3 etcdctl version
+etcdctl version: 3.3.11
+API version: 3.3
+
+
+查看key和值
+[root@VM-4-2-centos wwwlogs]# ETCDCTL_API=3 etcdctl get "" --from-key
+server/2
+1713244807221
+server/4
+1715696744296
+server/auth#2@4@1
+{"Name":"auth","ID":"auth#2@4@1","Host":"10.0.4.2:5401","Port":0,"Tags":null,"Type":4,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/battleboss#2@13@1
+{"Name":"battleboss","ID":"battleboss#2@13@1","Host":"10.0.4.2:51301","Port":0,"Tags":null,"Type":13,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/battlerecord#2@15@1
+{"Name":"battlerecord","ID":"battlerecord#2@15@1","Host":"10.0.4.2:51501","Port":0,"Tags":null,"Type":15,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/crossrouter#2@20@1
+{"Name":"crossrouter","ID":"crossrouter#2@20@1","Host":"10.0.4.2:52001","Port":0,"Tags":null,"Type":20,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/crossserver#2@21@1
+{"Name":"crossserver","ID":"crossserver#2@21@1","Host":"10.0.4.2:52101","Port":0,"Tags":null,"Type":21,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/db#2@3@1
+{"Name":"db","ID":"db#2@3@1","Host":"10.0.4.2:5301","Port":0,"Tags":null,"Type":3,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/game#2@2@1
+{"Name":"game","ID":"game#2@2@1","Host":"10.0.4.2:5201","Port":0,"Tags":null,"Type":2,"Zone":2,"Index":1,"RegTime":1721380484,"LocalAddr":"10.0.4.2"}
+server/gate#2@1@1
+{"Name":"gate","ID":"gate#2@1@1","Host":"10.0.4.2:21001","Port":0,"Tags":null,"Type":1,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/gmweb#2@14@1
+{"Name":"gmweb","ID":"gmweb#2@14@1","Host":"10.0.4.2:51401","Port":0,"Tags":null,"Type":14,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/guild#2@7@1
+{"Name":"guild","ID":"guild#2@7@1","Host":"10.0.4.2:5701","Port":0,"Tags":null,"Type":7,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/rank#2@6@1
+{"Name":"rank","ID":"rank#2@6@1","Host":"10.0.4.2:5601","Port":0,"Tags":null,"Type":6,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+server/social#2@5@1
+{"Name":"social","ID":"social#2@5@1","Host":"10.0.4.2:5501","Port":0,"Tags":null,"Type":5,"Zone":2,"Index":1,"RegTime":1721380483,"LocalAddr":"10.0.4.2"}
+[root@VM-4-2-centos wwwlogs]# 
+
+
+只看key
+[root@VM-4-2-centos wwwlogs]# ETCDCTL_API=3 etcdctl get "" --from-key --keys-only
+server/2
+
+server/4
+
+server/auth#2@4@1
+
+server/battleboss#2@13@1
+
+server/battlerecord#2@15@1
+
+server/crossrouter#2@20@1
+
+server/crossserver#2@21@1
+
+server/db#2@3@1
+
+server/game#2@2@1
+
+server/gate#2@1@1
+
+server/gmweb#2@14@1
+
+server/guild#2@7@1
+
+server/rank#2@6@1
+
+server/social#2@5@1
+
+[root@VM-4-2-centos wwwlogs]# 
+
+
+
+
+清空
+ETCDCTL_API=3 etcdctl del --prefix /
+
+ETCDCTL_API=3 etcdctl --endpoints=http://localhost:2379 del --prefix /
+

+ 221 - 0
操作命令/java相关命令.txt

@@ -0,0 +1,221 @@
+打包命令----.\gradlew.bat clean build jar
+
+mongo数据库:docker exec -it 0cbb78421194 mongo mongodb://admin:rimZBP82Ia@127.0.0.1:27017/x5_tk_login?authSource=admin
+
+nohup java -jar jenkins.war --httpPort=12567 > jenkins.log 2>&1 &
+
+tar -czvf archive.tar.gz directory/    # 压缩
+tar -xzvf archive.tar.gz              # 解压
+
+mongo "mongodb://admin:123456@127.0.0.1:27017/admin?authSource=admin"
+
+启动svn
+svnserve -d -r /www/svn/ro
+
+mysql -u 用户名 -p -e "SELECT * FROM 数据库名.表名" -B | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > 输出文件.csv
+
+db.user.find(
+    { _id: 10001587 }
+)
+
+db.user.updateOne(
+    { _id: 10001587 },
+    { 
+        $set: { 
+            "medalManager.medalMap": {},
+        } 
+    }
+);
+
+test2插入到test集合中
+db.getSiblingDB('test').集合.insertMany(
+    db.getSiblingDB('test2').集合.find().toArray(),
+    { ordered: false }
+);
+//设置hset全部key为指定value10001
+EVAL "local keys = redis.call('HKEYS', KEYS[1]); for i,key in ipairs(keys) do redis.call('HSET', KEYS[1], key, ARGV[1]) end; return #keys" 1 CUser_ServerId: 10001
+
+//将10005的值改成10001
+EVAL "local keys = redis.call('HKEYS', KEYS[1]); local count = 0; for i,key in ipairs(keys) do local value = redis.call('HGET', KEYS[1], key); if value == ARGV[2] then redis.call('HSET', KEYS[1], key, ARGV[1]); count = count + 1; end; end; return count" 2 CUser_ServerId: 10001 10005
+
+redis-cli -a "lVzYFQ2i6v" EVAL "local keys = redis.call('HKEYS', 'CUser_ServerId:'); local count = 0; for i,key in ipairs(keys) do if redis.call('HGET', 'CUser_ServerId:', key) == '10004' then redis.call('HSET', 'CUser_ServerId:', key, '10005'); count = count + 1; end; end; return count" 0
+
+lVzYFQ2i6v
+db.your_collection.updateMany(
+    {},  // 空对象表示匹配所有文档
+    { 
+        $set: { 
+            "your_field": 10001 
+        }
+    }
+);
+
+db.user_info.updateMany(
+    { 
+        "serverId": "10004"  // 只匹配serverId为10003的文档
+    },
+    { 
+        $set: { 
+            "serverId": "10005" 
+        }
+    }
+);
+
+时空合服工具,新增level字段在user_info集合里
+// 检查当前数据库
+db.getName();
+
+// 切换到login数据库
+use m5_tk_login;
+
+// 检查players集合结构
+db.user_info.findOne();
+
+// 1. 先添加level字段(如果不存在)
+db.user_info.updateMany(
+  { level: { $exists: false } },
+  { $set: { level: 0 } }
+);
+print("已初始化level字段");
+
+// 2. 假设有两个服务器:s1和s2
+// 更新服务器s1的玩家等级
+var server1Db = db.getSiblingDB("m5_x1_game_10001");
+var loginDb = db.getSiblingDB("x5_tk_login");
+
+var count1 = 0;
+server1Db.user.find().forEach(function(doc) {
+  var result = loginDb.user_info.updateOne(
+    { 
+      _id: doc._id
+    },
+    { 
+      $set: { 
+        level: doc.playerManager.level,
+        update_time: new Date()
+      }
+    }
+  );
+  
+  if (result.modifiedCount > 0) {
+    count1++;
+  }
+});
+print("服务器s1更新完成,更新了 " + count1 + " 条记录");
+
+
+//备份mongo所有数据库
+mongo "mongodb://admin:rimZBP82Ia@localhost:27017/admin"
+
+db.createUser({
+  user: "mongobackup",
+  pwd: "Backup562221715",  // 使用强密码
+  roles: [
+    { role: "backup", db: "admin" },
+    { role: "clusterMonitor", db: "admin" },
+    { role: "readAnyDatabase", db: "admin" }
+  ]
+})
+
+mongodump --uri='mongodb://mongobackup:Backup562221715@localhost:27017' \
+          --authenticationDatabase=admin \
+          --out /backup/mongodb/
+
+# 启动 MongoDB 服务
+sudo systemctl start mongodb
+
+//全服务端口查看
+netstat -lntp
+
+/etc/systemd/system/mongodb.service
+[Unit]
+Description=MongoDB Database Server
+After=network.target
+
+[Service]
+Type=forking
+ExecStart=/usr/bin/mongod --config /www/server/mongodb/config.conf
+ExecStop=/usr/bin/mongod --shutdown --config /www/server/mongodb/config.conf
+Restart=always
+RestartSec=5
+LimitNOFILE=64000
+
+[Install]
+WantedBy=multi-user.target
+
+mongo安装
+# 创建安装目录
+mkdir -p ~/mongodb-install
+cd ~/mongodb-install
+
+# 下载 MongoDB 4.0 的 RPM 包(以下为示例,可能需要更新下载链接)
+wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/RPMS/mongodb-org-server-4.0.28-1.el7.x86_64.rpm
+wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/RPMS/mongodb-org-shell-4.0.28-1.el7.x86_64.rpm
+wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/RPMS/mongodb-org-tools-4.0.28-1.el7.x86_64.rpm
+wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/RPMS/mongodb-org-mongos-4.0.28-1.el7.x86_64.rpm
+
+# 安装依赖
+sudo yum install -y cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-plain libcurl net-snmp openldap openssl
+
+# 安装 RPM 包
+sudo rpm -ivh mongodb-org-server-4.0.28-1.el7.x86_64.rpm
+sudo rpm -ivh mongodb-org-shell-4.0.28-1.el7.x86_64.rpm
+sudo rpm -ivh mongodb-org-tools-4.0.28-1.el7.x86_64.rpm
+sudo rpm -ivh mongodb-org-mongos-4.0.28-1.el7.x86_64.rpm
+
+# 创建数据目录
+sudo mkdir -p /var/lib/mongo
+sudo chown -R mongod:mongod /var/lib/mongo
+
+# 创建日志目录
+sudo mkdir -p /var/log/mongodb
+sudo chown -R mongod:mongod /var/log/mongodb
+
+# 备份原配置文件
+sudo cp /etc/mongod.conf /etc/mongod.conf.bak
+
+# 编辑配置文件
+sudo vi /etc/mongod.conf
+
+# 网络绑定(默认只允许本地访问)
+net:
+  port: 27017
+  bindIp: 127.0.0.1  # 如果需要远程访问,改为 0.0.0.0
+
+# 存储配置
+storage:
+  dbPath: /var/lib/mongo
+  journal:
+    enabled: true
+
+# 日志配置
+systemLog:
+  destination: file
+  logAppend: true
+  path: /var/log/mongodb/mongod.log
+
+# 进程管理
+processManagement:
+  fork: true  # 后台运行
+  pidFilePath: /var/run/mongodb/mongod.pid
+
+# 安全配置(建议设置)
+security:
+  authorization: enabled  # 启用认证
+
+# 启动服务
+sudo systemctl start mongod
+
+# 设置开机自启
+sudo systemctl enable mongod
+
+# 查看服务状态
+sudo systemctl status mongod
+
+# 查看日志
+sudo tail -f /var/log/mongodb/mongod.log
+
+春之歌redis:/usr/bin/redis-server 127.0.0.1:6379   文件保存在/var/lib/redis
+mongo:/usr/bin/mongod -f /etc/mongod.conf
+mysql:/usr/sbin/mysqld
+nginx:./nginx -c /usr/local/nginx/conf/nginx.conf

+ 117 - 0
操作命令/mongo操作命令.txt

@@ -0,0 +1,117 @@
+db.user.find(
+    { _id: 10004680 }
+)
+
+db.user.updateOne(
+    { _id: 10000394 },
+    { 
+        $set: { 
+            "medalManager.medalMap": {},
+            "combatPlanManager.combatPlanMap": {},
+        } 
+    }
+);
+
+db.user.find(
+  { _id: 10000245 },
+  { _id: 1, "medalManager.medalMap": 1}
+)
+
+db.user.find(
+  { _id: 10000245 },
+  { _id: 1, "combatPlanManager.combatPlanMap": 1}
+)
+
+//删除指定字段为0的子文档
+db.user.updateMany(
+  { _id: 10000245 },
+  [
+    {
+      $set: {
+        "medalManager.medalMap": {
+          $arrayToObject: {
+            $filter: {
+              input: { $objectToArray: "$medalManager.medalMap" },
+              as: "item",
+              cond: { $ne: ["$$item.v.isLocked", 0] }
+            }
+          }
+        }
+      }
+    }
+  ]
+)
+
+
+db.user.updateMany(
+  { _id: 10000245 },
+  [
+    {
+      $set: {
+        "combatPlanManager.combatPlanMap": {
+          $arrayToObject: {
+            $filter: {
+              input: { $objectToArray: "$combatPlanManager.combatPlanMap" },
+              as: "item",
+              cond: { $ne: ["$$item.v.position", 0] }
+            }
+          }
+        }
+      }
+    }
+  ]
+)
+
+//查询充值总和
+db.pay.aggregate([
+  {
+    $match: {
+      callbaktime: { $exists: true, $ne: null } // 筛选callbacktime存在且不为null的文档
+    }
+  },
+  {
+    $group: {
+      _id: null,
+      totalMoney: { $sum: "$money" }
+    }
+  }
+])
+
+备份玩家数据
+mongoexport -h localhost -p 27017 -u admin -p 123456 --authenticationDatabase admin -d m5_x1_game_10001 -c user -q '{ "_id": { "$numberLong": "10002017" } }' -o user_10002017.json
+
+删除玩家指定邮件
+db.user.update(
+  { _id: 10002017 },
+  { $unset: { "mailManager.mailMap.10002017010217683145650000": 1 } }
+)
+
+db.user.findOne(
+  { _id: 10002017 },
+  { "mailManager.mailMap": 1 }
+)
+
+mongo4.2以下清楚芯片数据:
+db.user.find({ _id: 10001747 }).forEach(function(doc) {
+  if (doc.medalManager && doc.medalManager.medalMap) {
+    var newMedalMap = {};
+    
+    // 遍历 medalMap,只保留 isLocked !== 0 的项
+    for (var key in doc.medalManager.medalMap) {
+      var item = doc.medalManager.medalMap[key];
+      if (item.isLocked !== 0) {
+        newMedalMap[key] = item;
+      }
+    }
+    
+    // 更新文档
+    db.user.updateOne(
+      { _id: doc._id },
+      { $set: { "medalManager.medalMap": newMedalMap } }
+    );
+    
+    print("已处理文档: " + doc._id);
+    print("过滤前数量: " + Object.keys(doc.medalManager.medalMap).length);
+    print("过滤后数量: " + Object.keys(newMedalMap).length);
+  }
+});

+ 26 - 0
操作命令/redis命令.txt

@@ -0,0 +1,26 @@
+sudo systemctl start redis
+
+导出:rdb --command protocol --db 31 双线服.rdb > 31.txt
+导入:cat 31.txt | redis-cli --pipe -n 31
+
+redis-cli < a.txt
+
+ZREVRANGE key start stop [WITHSCORES]
+
+redis-cli -n 21 ZRANGE your_zset_key 0 -1 | awk '{ if (length($0) < 19) print $0 }' > to_delete.txt
+cat to_delete.txt | xargs -L 1 redis-cli -n 21 ZREM your_zset_key
+
+redis-cli -n 0 --scan --pattern "guildbattle:*" | xargs redis-cli -n 0 DEL
+redis-cli -n 0 --scan --pattern "guildbattle:rank:*" | xargs redis-cli -n 0 DEL
+redis-cli -n 0 --scan --pattern "guildbattle:log:*" | xargs redis-cli -n 0 DEL
+redis-cli -n 0 --scan --pattern "dc100guild*" | xargs redis-cli -n 0 DEL
+del guildbattle:base:
+del guildbattle:table:
+del dc100
+
+redis-cli -n 21 --eval <(echo "local keys = redis.call('keys', 'guildbattle:table:*') for i, key in ipairs(keys) do redis.call('del', key) end return #keys") 21
+
+redis-cli -n 0 --scan --pattern "role_task_hard2*" | xargs redis-cli -n 0 DEL
+
+nohup java -jar jenkins.war --httpPort=12567 > jenkins.log 2>&1 &
+

+ 53 - 0
操作命令/三国合区保留区服.txt

@@ -0,0 +1,53 @@
+合区方法:
+1,redis中使用命令(举例:将10003的玩家合到10001)
+redis-cli -a "lVzYFQ2i6v" EVAL "local keys = redis.call('HKEYS', 'CUser_ServerId:'); local count = 0; for i,key in ipairs(keys) do if redis.call('HGET', 'CUser_ServerId:', key) == '10033' then redis.call('HSET', 'CUser_ServerId:', key, '10030'); count = count + 1; end; end; return count" 0
+
+2,更新mongo中的x5_tk_login中的user_info中合服区的等级。
+// 更新服务器s1的玩家等级
+var server1Db = db.getSiblingDB("m5_x1_game_10001");
+var loginDb = db.getSiblingDB("x5_tk_login");
+
+var count1 = 0;
+server1Db.user.find().forEach(function(doc) {
+  var result = loginDb.user_info.updateOne(
+    { 
+      _id: doc._id
+    },
+    { 
+      $set: { 
+        level: doc.playerManager.level,
+        update_time: new Date()
+      }
+    }
+  );
+  
+  if (result.modifiedCount > 0) {
+    count1++;
+  }
+});
+print("服务器s1更新完成,更新了 " + count1 + " 条记录");
+将mongo中的x5_tk_login中的user_info中10003的玩家serverId改成10001,
+db.user_info.updateMany(
+    { 
+        "serverId": "10003"  // 只匹配serverId为10003的文档
+    },
+    { 
+        $set: { 
+            "serverId": "10001" 
+        }
+    }
+);
+将mongo中10003区的集合user和guildinfo插入到10001区的数据库。
+db.getSiblingDB('m5_x1_game_10001').user.insertMany(
+    db.getSiblingDB('m5_x1_game_10003').user.find().toArray(),
+    { ordered: false }
+);
+db.getSiblingDB('m5_x1_game_10001').guildInfo.insertMany(
+    db.getSiblingDB('m5_x1_game_10003').guildInfo.find().toArray(),
+    { ordered: false }
+);
+
+1-19区合区保留1区
+20-21保留20
+22-25保留22
+26-33保留30

+ 70 - 0
操作命令/仙境服务器2.txt

@@ -0,0 +1,70 @@
+仙境测试服
+110.40.223.119 root Abc110110abc
+外网面板地址: https://101.43.46.101:36747/fbb3a819
+内网面板地址: https://10.0.4.11:36747/fbb3a819
+|-用户名: zkuz0cwc
+|-新密码: 562221715
+
+redis-cli -h 127.0.0.1 -p 6380 -n 0 --raw HGETALL guild:roletoguildindex > hash_data.txt
+redis-cli -h 127.0.0.1 -p 6380 -n 11 --raw HGETALL guild:roletoguildindex > hash_data.txt
+redis-cli -h 127.0.0.1 -p 6380 -n 21 --raw HGETALL guild:roletoguildindex > hash_data.txt
+
+awk '{printf "HSET guild:roletoguildindex %s %s\n", $1, $2}' hash_data.txt | redis-cli -h 127.0.0.1 -p 6379 -n 0 --pipe
+awk '{printf "HSET guild:roletoguildindex %s %s\n", $1, $2}' hash_data.txt | redis-cli -h 127.0.0.1 -p 6379 -n11 --pipe
+awk '{printf "HSET guild:roletoguildindex %s %s\n", $1, $2}' hash_data.txt | redis-cli -h 127.0.0.1 -p 6379 -n 21 --pipe
+
+
+仙境 正式服(1-30)
+
+IP:165.154.29.92.globalssh.cn
+用户名:root
+密码:w5cMYipnuDz2L7RY
+
+外网面板地址: https://165.154.29.92:39790/5c130ad5
+内网面板地址: https://10.35.14.202:39790/5c130ad5
+|-用户名: oz4vjgo9
+|-新密码: 562221715
+
+双线服
+(内)10.35.89.110(外)152.32.220.85国际 
+root Abc110110abc
+
+jenkins
+http://152.32.220.85:8080/
+admin admin1234
+
+gm
+http://152.32.220.85:81/ht/gm/gm.php
+
+
+svn://110.40.223.119/    admin admin123
+
+代码:
+https://gitee.com/xionghuy/ro_server    dev分支
+
+新海外测试服165.154.202.27(欧美服) 3SvifC4ezv7GC9eK
+jenkins:
+http://165.154.202.27:12567/ admin adminadmin1234
+
+俄服:165.154.215.99 root 562221715
+
+http://165.154.215.99:12567/  admin adminadmin1234
+
+东南亚
+初心者大冒险
+ip 43.156.13.116
+账号 root
+端口 22
+密码 mpVTrNQ7XE@
+尽快修改登录信息
+
+ 外网面板地址: https://43.156.13.116:24165/a0ca85e0
+ 内网面板地址: https://192.168.1.12:24165/a0ca85e0
+ username: mehl036k
+ password: e667bc8b
+
+新aa
+root
+128.14.226.105_66067814.ipssh.net
+128.14.226.105
+2BGf4k5sghLrTxPT

+ 180 - 0
操作命令/仙境架设.txt

@@ -0,0 +1,180 @@
+
+仙境传说RO初心集结  Linux 架设教程
+
+演示系统:Centos 7.6
+
+教程演示虚拟机地址:192.168.200.129  外网和局域网类似
+
+
+安装宝塔直接运行命令即可。
+
+url=https://btdown.xyz/install/install_lts.sh;if [ -f /usr/bin/curl ];then sudo curl -sSO $url;else sudo wget -O install_lts.sh $url;fi;sudo bash install_lts.sh ed8484bec
+
+输入y回车确认安装
+
+
+关闭SSL验证命令:
+rm -f /www/server/panel/data/ssl.pl && /etc/init.d/bt restart
+
+关闭后执行 “bt 14” 查看新的面板地址
+
+PS:如果安装了SSL导致无法登陆面板参考解决方式:https://www.90175.com/wenku/txtlist_i119v.html
+
+搭建环境:
+CENTOS 7以上系统
+Nginx 1.22
+MySQL 5.7
+PHP-5.6
+Redis 7.0
+
+这里不单独演示,参考之前的 “宝塔安装通用视频”.
+
+
+1、关闭防火墙、开放端口 
+
+systemctl stop firewalld
+
+systemctl disable firewalld
+
+防火墙不关闭也行
+
+宝塔放行端口:1:65535
+
+或单独打开   
+
+PS:如果使用腾讯云或阿里云记得把控制台的端口也打开
+
+2、上传xj.tar.gz到服务器根目录(根目录不是root目录!!使用WinSCP或其他工具上传数据,也可以直接宝塔传!!)
+
+
+解压xj.tar.gz
+
+cd /
+tar zxvf xj.tar.gz
+
+
+给予 777权限
+chmod -R 777 /data
+
+3.环境配置
+
+安装环境
+yum install etcd -y
+--------------------------------------------------------------------------------------------------------------------------------
+启动
+systemctl start etcd
+systemctl enable etcd
+
+
+4、设置数据库密码为:123456(在宝塔直接设置)
+
+
+命令行输入
+
+cd /data
+./sk
+
+数据库创建结束。可以通过宝塔查看是否创建成功。(数据库 - 点击 从服务器获取 获取到2个就正确的)
+
+运行后为了安全可以把 sk 文件删除
+
+6、搭建网站
+
+新建一个网站-你的ip:端口 或域名:端口
+
+有端口就添加端口这里的端口80
+
+
+网站目录设置\www\wwwroot\game
+
+
+网站伪静态  
+location / {
+    try_files $uri $uri/ $uri.php?$args;
+  }
+
+---------------------------------------------------------------------
+7、服务端和网站修改   192.168.200.129 修改为你的IP
+
+服务端修改:
+
+
+/www/wwwroot/game/serverlist.php
+
+  
+到此算服务端就可以了,下面看看客户端
+
+
+  
+7、启动游戏服务
+
+启动游戏
+cd /data/server
+./start.sh
+
+关闭游戏
+cd /data/server
+./stop.sh
+
+
+启动后可以通过
+端口查看命令 netstat -lntp
+
+看到  基本就没什么问题了
+
+
+我们先修改客户端.
+
+8、客户端修改 (客户端默认地址192.168.200.129)
+
+
+推荐使用 ApkTool典藏版 进行反编译 可直接替换修改 :https://www.90175.com/shipin/view33.html
+
+global-metadata.dat无需对位修改教程:https://www.90175.com/wenku/txtlist_i141v.html
+
+安卓(使用32bit解包)
+
+/assets/AssetsAndroid/lua.unity3d----PlatformPack.lua
+
+使用方法 (不会的参考 客户端 文件夹里面的视频)
+1.打开文件
+2.新文件命名为   1
+3.点信息,搜索找到PlatformPack.lua 
+导出转存 自己找个位置保存  并且修改IP   再导入转存   确定
+4.保存文件  命名为  2
+5.压缩文件 命名为 lua.unity3d   
+
+覆盖回去即可
+
+
+这里以安卓为例
+
+
+反编译客户端
+
+之前编译过就不重复了。
+
+
+
+编译就不演示了。
+
+
+下面启动试试
+
+
+
+
+可以正常登陆。
+
+好了。本期教程到此结束。
+
+祝君好运。。。。
+
+其他自行研究吧。。。
+
+
+PS:
+
+简单介绍下GM后台使用
+
+

+ 1 - 0
操作命令/关闭注册.txt

@@ -0,0 +1 @@
+关闭注册,http://103.239.245.64:8007/gm/register?state=1

+ 50 - 0
操作命令/刷新.txt

@@ -0,0 +1,50 @@
+http://cxzcdn.hkhappygame.com/res/NoticeNew/
+
+http://cxzcdn.hkhappygame.com/res/TestServerRes/
+
+http://cxzcdn.hkhappygame.com/res/AndroidNewRes/
+
+http://cxzcdn.hkhappygame.com/res/IosRes/
+
+http://cxzcdn.hkhappygame.com/res/ApkRes/cxzdmx_1.0.0.22.apk
+http://cxzomcdn.hkmiagame.com/res/AndroidNewRes/
+http://cxzomcdn.hkmiagame.com/res/NoticeNew/
+http://cxzomcdn.hkmiagame.com/en/res/IosRes/
+
+俄服cdn
+http://cxzrucdn.xinxinjoy.com/res/NoticeNew/Notice_List.json
+http://cxzrucdn.xinxinjoy.com/ru/res/AndroidNewRes/
+https://signin.aliyun.com/login.htm?callback=https%3A%2F%2Fcdn.console.aliyun.com%2Foverview#/main
+登录用户:ROCDN@1328323523643393.onaliyun.com
+登录密码:roRO1234!
+
+东南亚
+http://cxzdncdn.4onegame.com/dny/res/AndroidNewRes/
+http://cxzdncdn.4onegame.com/dny/res/IosRes/
+https://cloud.tencent.com/login/subAccount/100044066903?type=subAccount&username=game-cxzdmx
+game-cxzdmx
+qq562221715QQ.
+
+提供两种预热刷新方式
+浏览器控制台
+CDN清除缓存地址
+https://console.cloud.tencent.com/edgeone/purge
+CDN预热地址
+https://console.cloud.tencent.com/edgeone/prefetch
+
+
+API
+对应的zoneId是这个   zone-3iuvercysmdu
+对应的主域名是 4onegame.com
+接口的SecretId和SecretKey私发给你
+https://cloud.tencent.com/document/product/1552/80703
+https://cloud.tencent.com/document/product/1552/80704
+id:AKIDQlxzqZBf4KXqNlxz583mVjsEVUM5dzDL
+key:1sjgUEoGcryx388DHWo394nMm393xthL
+
+zadd rank:map 100 7497409956892639841
+
+ZREVRANGE rank:map 0 -1 withscores
+
+git@codeup.aliyun.com:67db8011c732761f79424626/xianjing_server.git
+

+ 4 - 0
操作命令/开服流程.txt

@@ -0,0 +1,4 @@
+1、在mongo数据库:x5_tk_login 中添加服务器信息,注意设置开服时间,当前时间到了开服时间,app中才会看到服务器
+2、在北京时间开服当天(重点),在机器上的/data/java目录执行:./openserver.sh x && cd gameserver1-x && ./run.sh start,x为服务器id
+
+docker exec -it <container_name_or_id> mongosh

+ 30 - 0
操作命令/打包及上传.txt

@@ -0,0 +1,30 @@
+新机器部署:
+data_online_20250820.tar.gz是备份的项目安装结构,上传到新机器中,执行:
+1、mkdir /data  
+2、tar -xvpzf data_online_20250820.tar.gz -C /data
+3、 /data/doc/install.txt 中记录了需要安装的环境,直接按顺序执行其中的命令
+4、daemon.json 需要拷贝到/etc/docker/ 中 (需要第3步中先安装docker)
+5、skweb.conf拷贝到/etc/nginx/conf.d/ 中 (需要第3步中先安装nginx)
+6、进入/data/docker/db,执行docker-compose up -d,会安装3个db并启动
+7、链接mongodb,找到x5_tk_login,修改server_info中的服务器列表信息
+8、cd /data/java/chatserver && ./run.sh start
+9、cd /data/gm && ./run.sh start
+10、进入 /data/java,启动对应的服(进入对应的文件夹,执行./run.sh start),或者启动所有服(./runall.sh start)
+
+
+
+更新:
+以下的目录是基于项目基础目录:/data/java,测试服(49.232.165.138)是:/home/java
+game
+1、执行.\gradlew.bat clean build jar,会在各个包的build/libs中生成对应的jar文件
+2、serverlogic-1.0.0.jar 上传到gameServerFile目录,其他jar上传到gameServerFile/lib
+3、配置文件上传到 gameServerFile/conf/server
+然后重启即可
+
+loginserver
+1、执行.\gradlew.bat clean build jar,会在项目更目录的build/libs中看到生成的loginserver-1.0-SNAPSHOT.war
+2、进入/data/java/loginserver/apache-tomcat-8.5.95/bin,执行shutdown.sh 脚本停止服务
+3、进入/data/java/loginserver/apache-tomcat-8.5.95/webapps目录,执行 rm -rf loginserver-1.0-SNAPSHOT*
+4、上传loginserver-1.0-SNAPSHOT.war到第三步的目录
+5、进入第二步的目录,执行startup.sh 开启服务
+

+ 84 - 0
操作命令/服务器列表.txt

@@ -0,0 +1,84 @@
+测试服:
+49.232.165.138  root  Abc110110abc
+
+数据库密码:f7bd979b98fb334d
+
+宝塔:
+外网ipv4面板地址: http://49.232.165.138:13435/c8d9e12c
+内网面板地址:     http://10.0.24.15:13435/c8d9e12c
+username: q1owejsl
+password: 3d6d0549
+
+
+361测试:
+62.234.25.14 root Abc110110abc
+sdk 参数
+appId=03487a92fc46d57ddc27e60755cb3f21
+appKey=d796d0b73d205504fbc38d1c01697ed4
+serverKey=337355bb236df29a5dfeeb85eaf15d21
+
+
+
+第一步:请求登录账户名、密码:http://49.232.165.138:8088/tk/userLogin?userName=test001&password=test001&sign=108baa3daa7bfc3a96fd4538e78abe79
+
+第二步,发送获得的openId和token和服务器IDhttp://49.232.165.138:8088/tk/getUserInfo?openId=10001&serverId=10001&token=10001&platform=4&sub_channel=1&version=1.21001
+
+第三步,缓存请求到的uid和token{"uid":10000102,"token":1052462562},作用是在发送socket和心跳包时予以验证。通过MessageTypeProto_pb.LOGIN_REQUEST协议请求登录ID:test001
+
+
+
+
+时空幻想0.1折-
+BCC
+root初始密码: mY!PPHJdt9RrJH2amRj%x%pdP
+服务器1: 182.61.50.96
+
+服务器2:182.61.17.15
+
+服务器3:182.61.50.246
+
+服务器4:106.13.205.102
+
+服务器5:182.61.21.157
+
+服务器6:106.13.235.110
+
+hongzhou: 180.97.183.95
+账号:root 端口:22 密码:IYQaao74
+7.6系统
+
+三国服务器
+43.248.128.174
+root
+Yz*347897847
+
+【云服务器】请在安全组放行 18542 端口
+ 外网面板地址: https://43.248.128.174:18542/1035e9cf
+ 内网面板地址: https://43.248.128.174:18542/1035e9cf
+ username: oa3sdfsx
+ password: f53a208d
+
+# 数据库配置
+MYSQL_ROOT_PASSWORD=g4O3shbz1x
+MYSQL_DATABASE=houtai
+MYSQL_USER=game
+MYSQL_PASSWORD=4NIle9ft7A
+
+MONGO_INITDB_ROOT_USERNAME=admin
+MONGO_INITDB_ROOT_PASSWORD=rimZBP82Ia
+
+REDIS_PASSWORD=lVzYFQ2i6v
+
+# 应用配置
+DB_HOST=mysql  # 容器名,用于Docker内部通信
+DB_PORT=3306
+MYSQL_DATABASE=houtai
+MYSQL_USER=game
+MYSQL_PASSWORD=4NIle9ft7A
+
+MONGO_HOST=mongodb
+MONGO_PORT=27017
+MONGO_USER=admin
+MONGO_PASSWORD=rimZBP82Ia
+
+REDIS_HOST=redis

+ 330 - 0
操作命令/架设教程-SK.txt

@@ -0,0 +1,330 @@
+※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
+
+
+本站教程、资源皆在单机环境进行,仅供单机研究学习使用,下载后请于24小时内删除,或购买正版。
+
+
+※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
+
+
+时空战场  Linux 架设教程
+
+测试系统:centos7.6
+
+
+默认13位IP
+
+教程演示虚拟机地址:192.168.8.128  外网和局域网类似
+
+
+安装宝塔直接运行命令即可。
+
+yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
+输入y回车确认安装
+
+
+关闭SSL验证命令:
+rm -f /www/server/panel/data/ssl.pl && /etc/init.d/bt restart
+
+关闭后执行 “bt 14” 查看新的面板地址
+
+PS:如果安装了SSL导致无法登陆面板参考解决方式:https://www.90175.com/wenku/txtlist_i119v.html
+
+搭建环境:
+CENTOS 7以上系统
+Nginx-1.24
+Redis-7.2.4
+MongoDB-4.0
+
+这里不单独演示,参考之前的 “宝塔安装通用视频”.
+
+
+1、关闭防火墙、开放端口 
+
+systemctl stop firewalld
+
+systemctl disable firewalld
+
+防火墙不关闭也行
+
+宝塔放行端口:1:65535
+
+或单独打开   
+
+PS:如果使用腾讯云或阿里云记得把控制台的端口也打开
+
+2、上传sk.tar.gz到服务器根目录(根目录不是root目录!!使用WinSCP或其他工具上传数据,也可以直接宝塔传!!)
+
+
+解压sk.tar.gz 
+
+cd /
+tar zxvf sk.tar.gz
+
+
+给予 777权限
+
+chmod -R 777 /home/
+
+3.环境配置
+
+yum install -y java-1.8.0-openjdk-devel.x86_64
+
+
+
+
+
+4、设置数据库
+
+
+添加宝塔里面数据库
+
+宝塔面板--数据库--MongoDB 
+
+注意:MongoDB 
+
+添加数据库
+
+x1_cn_test_login
+
+admin
+
+在ssh 依次复制输入命令  :修改你的IP为服务器外网IP再输入命令
+
+mongo
+
+use x1_cn_test_login
+
+db.getCollection("server_info").drop();
+db.createCollection("server_info");
+db.getCollection("server_info").insert([ {
+    _id: NumberInt("1"),
+    name: "时空一区",
+    ip: "180.97.183.95",
+    port: "16081",
+    "server_id": "10001",
+    channel: "pc",
+    "sub_channel": "1",
+    state: "2",
+    plat: "android",
+    "open_time": "1700622508",
+    "open_type": "1",
+    "is_new": "0",
+    "is_banreg": "0",
+    isWhite: "0",
+    "server_version": "1",
+    "gm_ip": "127.0.0.1",
+    "gm_port": "7916",
+    "time_zone": "UTC+8",
+    currency: "$",
+    exportdata: "1",
+    isnew: 1
+} ]);
+
+
+use admin
+
+db.createUser({
+
+  user: "admin",
+
+  pwd: "rimZBP82Ia",
+
+  roles: [
+
+    { role: "userAdminAnyDatabase", db: "admin" },
+
+    { role: "dbAdminAnyDatabase", db: "admin" },
+
+    { role: "readWriteAnyDatabase", db: "admin" }
+
+  ]
+
+})
+
+exit
+
+
+
+
+
+6、搭建网站
+
+新建一个网站-你的ip:端口 或域名:端口
+
+有端口就添加端口这里的端口81
+
+
+网站目录设置 /www/wwwroot/rg
+
+
+---------------------------------------------------------------------
+7、服务端和网站修改   192.168.8.128 修改为你的IP
+
+服务端修改:
+
+\www\wwwroot\rg\1\Android\version.txt
+
+\www\wwwroot\rg\1\IOS\version.txt
+  
+到此算服务端就可以了,下面看看客户端
+
+
+  
+7、启动游戏服务
+
+
+启动
+
+cd /home/java/gameserver
+nohup java -jar gameSrv-1.0.0.jar > log.file 2>&1 &
+
+cd /home/java/chatserver
+nohup java -jar chatserver-1.0.0.jar > log.file 2>&1 &
+
+启动
+
+cd /home/java/loginserver/apache-tomcat-8.5.95/bin
+./startup.sh
+
+
+
+关闭
+
+cd /home/java/loginserver/apache-tomcat-8.5.95/bin
+./shutdown.sh 
+
+
+启动后可以通过
+端口查看命令 netstat -lntp
+
+看到 xxxx 基本就没什么问题了
+
+
+我们先修改客户端.
+
+8、客户端修改 (客户端默认地址192.168.8.128)
+
+
+推荐使用 ApkTool典藏版 进行反编译 可直接替换修改 :https://www.90175.com/shipin/view33.html
+
+
+HEdit 使用指引视频教程:https://www.90175.com/shipin/view30.html
+
+
+安卓: 
+
+\assets\bin\Data\c903ed81b528e4c44b1cd995ee46aa72    
+
+\assets\Android\Resources\version.txt
+
+
+苹果: 
+
+\Payload\game.app\Data\resources.assets
+
+\Payload\game.app\Data\Raw\IOS\Resources\version.txt
+
+这里以安卓为例
+
+
+反编译客户端
+
+
+都修改后编译回去.
+
+
+编译就不演示了。
+
+
+下面启动试试
+
+
+
+
+可以正常登陆。
+
+好了。本期教程到此结束。
+
+祝君好运。。。。
+
+其他自行研究吧。。。
+
+
+PS:
+
+
+
+========================================================
+
+
+
+PS:
+
+1、
+
+2\
+注:之前使用7.2测试时候发现 芒果库 需要手动启动
+
+命令如下
+
+/etc/init.d/mongodb start 芒果数据库启动
+
+视屏相关工具下载:
+
+------------------------------------------------------------
+PS:
+
+所有下载资源请自行杀毒!!!
+
+若有网页相关的资源可使用D盾扫描木马!!!
+
+查杀相关软件下载:https://www.90175.com/ruanjian/search_j24v.html
+
+------------------------------------------------------------
+
+
+其他常用工具下载:
+
+mysql数据库N11:https://www.90175.com/ruanjian/view1.html
+
+
VMware Workstation各版本集合:https://www.90175.com/ruanjian/view2.html
+
+端口映射工具合集:https://www.90175.com/ruanjian/view3.html
+
+更多软件下载:https://www.90175.com/ruanjian/
+
+
+※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
+
+源码来源与网络。本源码只是供大家研究学习之用。请大家不要用于商用,否者如引起一切纠纷和本人与论坛无关,后果自负,请下载后24小时内删除!!!
+
+※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
+
+闲着也是闲着,没事可以看看下面友情站点,也许有你需要的
+
+友情站点:
+
+懒人源码网 https://www.lrymw.com
+
+亲测源码网 https://www.qcymw.com
+
+菜鸟阁 http://www.cainiaoge.com
+
+等待添加(申请联系微信:76891828)。。。
+
+※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
+
+避免迷路,请记住备用域名:
+
+悟空源码网 https://www.wkymw.com
+
+※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
+
+关键的来了。。。
+
+客服微信:76891828 (备注会员账号,标明来意,不然不予通过)
+
+售后、建议、投诉到90ask事务板块留言:http://www.90ask.com
+
+※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※