### 1、Azerothcore安装指南
https://www.azerothcore.org/wiki/installation
### 2、数据库&依赖安装:
sudo apt update && sudo apt full-upgrade -y && sudo apt install git cmake make gcc g++ clang libssl-dev libbz2-dev libreadline-dev libncurses-dev libboost-all-dev mariadb-server mariadb-client libmariadb-dev libmariadb-dev-compat
下面这条MYSQL 8
sudo apt-get update && sudo apt-get install git cmake make gcc g++ clang libssl-dev libbz2-dev libreadline-dev libncurses-dev mysql-server libboost-all-dev libmysqlclient-dev
### 3、基础软件安装:
debian/ubuntu
sudo apt update && sudo apt install git curl unzip sudo
查看clang版本,大于等于10就好
clang --version
查看cmake版本3.16
cmake --version
都没问题的话
mysql -uroot -p
然后应该是没有密码的,应该可以直接进,如果进入了数据库就执行下面代码,意思是把数据库密码改成123456
alter user 'root'@'localhost' identified with mysql_native_password by '5680';
没报错说明成功,输入exit退出数据库,然后再登录,输入刚才改的密码试试能不能进
mysql -uroot -p
使用sudo netstat -plnt | grep mysql
来查看MySQL是否在监听所有网络接口(0.0.0.0)
或仅在监听本地环回接口(127.0.0.1)。
如果只监听在127.0.0.1,那么你需要修改MySQL配置文件以便它能从其他接口接收连接。
通常情况下,这个配置文件位于/etc/mysql/mysql.conf.d/mysqld.cnf,
找到bind-address这一项并将其更改为0.0.0.0。
然后重启mysql服务:sudo systemctl restart mysql。
修改WEB账号加密方式mysql_native_password
alter user 'web'@'127.0.0.1' identified with mysql_native_password by 'web5680';
FLUSH PRIVILEGES;先登录mysql -u root -p、然后切换到mysql数据库use mysql;、查看SELECT User, Host FROM mysql.user; SELECT User, Plugin FROM mysql.user;。如果root用户的host字段是localhost,那么你需要更改权限让root用户可以从任何主机登录。
创建一个允许从任何主机登录的root用户:
CREATE USER 'wow'@'%' IDENTIFIED BY '5680';
注意:上面因为密码太简单,是不允许的,要用复杂一点的密码,如:
CREATE USER 'root'@'%' IDENTIFIED BY 'YourNewComplexPassword';
(20231024 但是我后面测了一下,是可以的,估计我先前配置了mysql_secure_installation,参考文章:黑马mysql教程笔记(mysql8教程、数据库教程)基础篇——数据库相关概念、安装mysql安装及mysql卸载mysql、数据模型、SQL通用语法及分类(DDL、DML、DQL、DCL),我后面直接用root用户登录是ok的,root用户密码123,十分简单,估计后面容易被爆破。。。)
更改密码可以用:
ALTER USER 'wow'@'%' IDENTIFIED BY '5680';授权访问数据库
GRANT ALL PRIVILEGES ON *.* TO 'wow'@'%';刷新权限
FLUSH PRIVILEGES;
eixt;创建一个WEB本地账号,赋予所有权限!
CREATE USER 'web'@'127.0.0.1' IDENTIFIED BY 'web5680';
GRANT ALL PRIVILEGES ON . TO 'web'@'127.0.0.1';
FLUSH PRIVILEGES;
eixt;### 4、下载服务器源代码:
git clone https://github.com/trickerer/AzerothCore-wotlk-with-NPCBots.git; cd AzerothCore-wotlk-with-NPCBots
### 5、安装构建服务器所需的依赖:
./acore.sh install-deps
### 6、开始构建服务端软件:
./acore.sh compiler all
### 7、升级一下数据库:
apt update
curl -LsS https://r.mariadb.com/downloads/mariadb_repo_setup | sudo bash
sudo apt install mariadb-server -y
### 8、设置数据库-创建服务端专用的帐户
sudo mysql -u root
DROP USER IF EXISTS 'acore'@'localhost';
DROP USER IF EXISTS 'acore'@'127.0.0.1';
CREATE USER 'acore'@'localhost' IDENTIFIED BY 'acore';
CREATE USER 'acore'@'127.0.0.1' IDENTIFIED BY 'acore';
GRANT ALL PRIVILEGES ON . TO 'acore'@'localhost' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON . TO 'acore'@'127.0.0.1' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
### 9、下载客户端资料:
./acore.sh client-data
### 10、复制服务器默认配置文件,
cp env/dist/etc/authserver.conf.dist env/dist/etc/authserver.conf
cp env/dist/etc/worldserver.conf.dist env/dist/etc/worldserver.conf
### 11、修改机器人上限
vim env/dist/etc/worldserver.conf
(将bot改成NpcBot.MaxBots = 39)
### 12、首次运行世界服务
./acore.sh run-worldserver
### 13、开启数据库远程访问权限
mysql -u root
GRANT ALL PRIVILEGES ON . TO 'acore'@'%' IDENTIFIED BY 'acore' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
vim /etc/mysql/mariadb.conf.d/50-server.cnf
bind-address=0.0.0.0
systemctl restart mariadb
### 14、服务端开放远程访问权限
mysql -u root
use acore_auth;
UPDATE realmlist SET address = '192.168.110.235' WHERE id = 1;
exit;
### 15 运行所有服务
./acore.sh run-worldserver
./acore.sh run-authserver
nohup ./authserver > authserver.log 2>&1 &
nohup ./worldserver > worldserver.log 2>&1 &
pkill authserver
pkill worldserver
pgrep authserver
返回ID
top ID
### 16、创建帐号(世界服务中输入命令)
account create 帐号 密码
设置为管理员
account set gmlevel 帐号 3 -1
修改密码
account set password 帐号 密码 密码2
### 其它
NPCbot插件:
https://github.com/NetherstormX/NetherBot
### 添加机器人
npcbot spawn
### 登陆器:
链接: https://pan.baidu.com/s/1bXnGtWdHukHsBJ6rRgtN7g?pwd=g9x5 提取码: g9x5
评论区