| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| servers:linux:games:mangos_zero_vanilla_localhost [2025/10/18 21:39] – [realmd] Sean Rhone | servers:linux:games:mangos_zero_vanilla_localhost [2025/10/21 07:59] (current) – [One-liner] Sean Rhone |
|---|
| ==== Set-up ==== | ==== Set-up ==== |
| |
| * Enter current password for root: ''(enter)'' | * Separate Terminal window |
| * Switch to unix_socket authentication: ''Y'' | * Change the root password: ''N'' |
| * :!: Change the root password: ''N'' | |
| * Remove anonymous users: ''Y'' | |
| * Disallow root login remotely: ''Y'' | |
| * Remove test database and access to it: ''Y'' | |
| * Reload privilege tables now: ''Y'' | |
| |
| mariadb-secure-installation --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER | mariadb-secure-installation --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER |
| |
| mariadb-admin 'shutdown' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER | |
| |
| ====== Databases ====== | ====== Databases ====== |
| |
| ===== Connect ===== | ===== Connect ===== |
| |
| * 2 Terminal windows | |
| |
| '/usr/sbin/mariadbd' --datadir=$HOME/'Projects/MaNGOS-Zero/mariadb/database' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' | '/usr/sbin/mariadbd' --datadir=$HOME/'Projects/MaNGOS-Zero/mariadb/database' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' |
| |
| FLUSH PRIVILEGES;EXIT; | FLUSH PRIVILEGES;EXIT; |
| | |
| | mariadb-admin 'shutdown' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER |
| |
| ====== Initial Compile ====== | ====== Initial Compile ====== |
| **** | **** |
| |
| "%ProgramFiles%\MariaDB 12.1\bin\mariadbd.exe" --defaults-file="%ProgramFiles%\MariaDB 12.1\data\my.ini" | '/usr/sbin/mariadbd' --datadir=$HOME/'Projects/MaNGOS-Zero/mariadb/database' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' |
| |
| "%ProgramFiles%\MariaDB 12.1\bin\mariadb.exe" -u "root" -p "realmd" < "%UserProfile%\Projects\MaNGOS-Zero\database\Realm\Setup\realmdLoadDB.sql" | mariadb --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER 'realmd0' < ~/'Projects/MaNGOS-Zero/database-src/Realm/Setup/realmdLoadDB.sql' |
| |
| "%ProgramFiles%\MariaDB 12.1\bin\mariadb.exe" -u "root" -p "character0" < "%UserProfile%\Projects\MaNGOS-Zero\database\Character\Setup\characterLoadDB.sql" | mariadb --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER 'character0' < ~/'Projects/MaNGOS-Zero/database-src/Character/Setup/characterLoadDB.sql' |
| |
| "%ProgramFiles%\MariaDB 12.1\bin\mariadb.exe" -u "root" -p "mangos0" < "%UserProfile%\Projects\MaNGOS-Zero\database\World\Setup\mangosdLoadDB.sql" | mariadb --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER 'mangos0' < ~/'Projects/MaNGOS-Zero/database-src/World/Setup/mangosdLoadDB.sql' |
| |
| MKDIR "%UserProfile%\Projects\MaNGOS-Zero\server" & COPY /B "%UserProfile%\Projects\MaNGOS-Zero\database\World\Setup\FullDB\"*".sql" "%UserProfile%\Projects\MaNGOS-Zero\server\world.sql" | rm -f ~/'Projects/MaNGOS-Zero/run/bin/world.sql' && mkdir -p ~/'Projects/MaNGOS-Zero/run/bin' && cat ~/'Projects/MaNGOS-Zero/database-src/World/Setup/FullDB/'*'.sql' > ~/'Projects/MaNGOS-Zero/run/bin/world.sql' |
| |
| "%ProgramFiles%\MariaDB 12.1\bin\mariadb.exe" -u "root" -p "mangos0" < "%UserProfile%\Projects\MaNGOS-Zero\server\world.sql" | mariadb --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER 'mangos0' < ~/'Projects/MaNGOS-Zero/run/bin/world.sql' && rm -f ~/'Projects/MaNGOS-Zero/run/bin/world.sql' |
| |
| ==== Initial Updates ==== | ==== Initial Updates ==== |
| * https://github.com/mangosone/database/tree/master/World/Updates/Rel22 | * https://github.com/mangosone/database/tree/master/World/Updates/Rel22 |
| |
| COPY /B "%UserProfile%\Projects\MaNGOS-Zero\database\World\Updates\Rel22\"*".sql" "%UserProfile%\Projects\MaNGOS-Zero\server\world-updates.sql" | rm -f ~/'Projects/MaNGOS-Zero/run/bin/world-updates.sql' && cat ~/'Projects/MaNGOS-Zero/database-src/World/Updates/Rel22/'*'.sql' > ~/'Projects/MaNGOS-Zero/run/bin/world-updates.sql' |
| |
| "%ProgramFiles%\MariaDB 12.1\bin\mariadb.exe" -u "root" -p "mangos0" < "%UserProfile%\Projects\MaNGOS-Zero\server\world-updates.sql" | mariadb --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER 'mangos0' < ~/'Projects/MaNGOS-Zero/run/bin/world-updates.sql' && rm -f ~/'Projects/MaNGOS-Zero/run/bin/world-updates.sql' |
| |
| ==== Clean-up ==== | mariadb-admin 'shutdown' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER |
| | |
| **** | |
| | |
| DEL /F /Q "%UserProfile%\Projects\MaNGOS-Zero\server\world.sql" "%UserProfile%\Projects\MaNGOS-Zero\server\world-updates.sql" | |
| |
| ====== Settings ====== | ====== Settings ====== |
| * https://github.com/mangos/realmd/blob/master/realmd.conf.dist.in | * https://github.com/mangos/realmd/blob/master/realmd.conf.dist.in |
| |
| MKDIR "%UserProfile%\Projects\MaNGOS-Zero\conf" | mkdir -p ~/'Projects/MaNGOS-Zero/conf' && nano ~/'Projects/MaNGOS-Zero/conf/realmd-localhost.conf' |
| | |
| "notepad.exe" "%UserProfile%\Projects\MaNGOS-Zero\conf\realmd-localhost.conf" | |
| |
| <code> | <code> |
| [RealmdConf] | [RealmdConf] |
| ConfVersion=2025101801 | ConfVersion=2025102101 |
| |
| LoginDatabaseInfo = ".;3306;realmd0;x;realmd0" | LoginDatabaseInfo = ".;../../mariadb/mariadb.sock;realmd0;x;realmd0" |
| |
| LogsDir = "" | LogsDir = "" |
| |
| UseProcessors = 0 | UseProcessors = 0 |
| ProcessPriority = 1 | ProcessPriority = 0 |
| WaitAtStartupError = 0 | WaitAtStartupError = 0 |
| RealmsStateUpdateDelay = 20 | RealmsStateUpdateDelay = 20 |
| |
| WrongPass.MaxCount = 3 | WrongPass.MaxCount = 5 |
| WrongPass.BanTime = 0 | WrongPass.BanTime = 0 |
| WrongPass.BanType = 0 | WrongPass.BanType = 0 |
| * https://github.com/mangoszero/server/blob/master/src/mangosd/mangosd.conf.dist.in | * https://github.com/mangoszero/server/blob/master/src/mangosd/mangosd.conf.dist.in |
| |
| MKDIR "%UserProfile%\Projects\MaNGOS-Zero\conf" | mkdir -p ~/'Projects/MaNGOS-Zero/conf' && nano ~/'Projects/MaNGOS-Zero/conf/mangosd-localhost.conf' |
| | |
| "notepad.exe" "%UserProfile%\Projects\MaNGOS-Zero\conf\mangosd-localhost.conf" | |
| |
| <code> | <code> |
| [MangosdConf] | [MangosdConf] |
| ConfVersion=2025101801 | ConfVersion=2025102101 |
| |
| RealmID = 1 | RealmID = 1 |
| DataDir = "../server" | DataDir = "." |
| LogsDir = "" | LogsDir = "" |
| |
| LoginDatabaseInfo = ".;3306;realmd0;x;realmd0" | LoginDatabaseInfo = ".;../../mariadb/mariadb.sock;realmd0;x;realmd0" |
| WorldDatabaseInfo = ".;3306;mangos0;x;mangos0" | WorldDatabaseInfo = ".;../../mariadb/mariadb.sock;mangos0;x;mangos0" |
| CharacterDatabaseInfo = ".;3306;character0;x;character0" | CharacterDatabaseInfo = ".;../../mariadb/mariadb.sock;character0;x;character0" |
| |
| LoginDatabaseConnections = 3 | LoginDatabaseConnections = 1 |
| WorldDatabaseConnections = 3 | WorldDatabaseConnections = 1 |
| CharacterDatabaseConnections = 3 | CharacterDatabaseConnections = 1 |
| MaxPingTime = 5 | MaxPingTime = 5 |
| WorldServerPort = 8085 | WorldServerPort = 8085 |
| BindIP = "0.0.0.0" | BindIP = "0.0.0.0" |
| UseProcessors = 0 | UseProcessors = 0 |
| ProcessPriority = 1 | ProcessPriority = 0 |
| Compression = 1 | Compression = 1 |
| PlayerLimit = 3 | PlayerLimit = 3 |
| PetUnsummonAtMount = 0 | PetUnsummonAtMount = 0 |
| Event.Announce = 0 | Event.Announce = 0 |
| BeepAtStart = 1 | BeepAtStart = 0 |
| ShowProgressBars = 0 | ShowProgressBars = 0 |
| WaitAtStartupError = 0 | WaitAtStartupError = 0 |
| |
| * Shutdown order: ''mangosd'' -> ''realmd'' -> MariaDB | * Shutdown order: ''mangosd'' -> ''realmd'' -> MariaDB |
| | * TODO: Terminal window titles need named something recognizable at-glance |
| |
| MKDIR "%UserProfile%\Projects\MaNGOS-Zero\scripts" & "notepad.exe" "%UserProfile%\Projects\MaNGOS-Zero\scripts\localhost-server-start.bat" | MKDIR "%UserProfile%\Projects\MaNGOS-Zero\scripts" & "notepad.exe" "%UserProfile%\Projects\MaNGOS-Zero\scripts\localhost-server-start.bat" |
| |
| * 3 Command Prompt windows | * 3 Command Prompt windows |
| | * ''Ctrl + \'' to quit MariaDB |
| |
| "%ProgramFiles%\MariaDB 12.1\bin\mariadbd.exe" --defaults-file="%ProgramFiles%\MariaDB 12.1\data\my.ini" | '/usr/sbin/mariadbd' --datadir=$HOME/'Projects/MaNGOS-Zero/mariadb/database' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' |
| | |
| | cd ~/'Projects/MaNGOS-Zero/run/bin' && ~/'Projects/MaNGOS-Zero/run/bin/realmd' -c ~/'Projects/MaNGOS-Zero/conf/realmd-localhost.conf' |
| | |
| | cd ~/'Projects/MaNGOS-Zero/run/bin' && ~/'Projects/MaNGOS-Zero/run/bin/mangosd' -c ~/'Projects/MaNGOS-Zero/conf/mangosd-localhost.conf' |
| | |
| | ==== One-liner ==== |
| |
| CLS && SET "OPENSSL_MODULES=%ProgramFiles%\OpenSSL-Win64\bin" && CD "%UserProfile%\Projects\MaNGOS-Zero\server" && "%UserProfile%\Projects\MaNGOS-Zero\server\realmd.exe" -c "%UserProfile%\Projects\MaNGOS-Zero\conf\realmd-localhost.conf" | kgx -T 'MariaDB' -e '/usr/sbin/mariadbd' --datadir=$HOME/'Projects/MaNGOS-Zero/mariadb/database' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' && sleep '2' && kgx -T 'Realm' -- '/usr/bin/bash' -c "cd ~/'Projects/MaNGOS-Zero/run/bin' && ~/'Projects/MaNGOS-Zero/run/bin/realmd' -c ~/'Projects/MaNGOS-Zero/conf/realmd-localhost.conf'" && kgx -T 'World' -- '/usr/bin/bash' -c "cd ~/'Projects/MaNGOS-Zero/run/bin' && ~/'Projects/MaNGOS-Zero/run/bin/mangosd' -c ~/'Projects/MaNGOS-Zero/conf/mangosd-localhost.conf'" |
| |
| CLS && SET "OPENSSL_MODULES=%ProgramFiles%\OpenSSL-Win64\bin" && CD "%UserProfile%\Projects\MaNGOS-Zero\server" && "%UserProfile%\Projects\MaNGOS-Zero\server\mangosd.exe" -c "%UserProfile%\Projects\MaNGOS-Zero\conf\mangosd-localhost.conf" | xfce4-terminal -T 'MariaDB' -x '/usr/sbin/mariadbd' --datadir=$HOME/'Projects/MaNGOS-Zero/mariadb/database' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' && sleep '2' && xfce4-terminal -T 'Realm' -x '/usr/bin/bash' -c "cd ~/'Projects/MaNGOS-Zero/run/bin' && ~/'Projects/MaNGOS-Zero/run/bin/realmd' -c ~/'Projects/MaNGOS-Zero/conf/realmd-localhost.conf'" && xfce4-terminal -T 'World' -x '/usr/bin/bash' -c "cd ~/'Projects/MaNGOS-Zero/run/bin' && ~/'Projects/MaNGOS-Zero/run/bin/mangosd' -c ~/'Projects/MaNGOS-Zero/conf/mangosd-localhost.conf'" |
| |
| ===== Create Account ===== | ===== Create Account ===== |
| |
| ====== Extras ====== | ====== Extras ====== |
| | |
| | * :?: TODO: Quotes weren't accepted for ''.tele'' on Linux |
| |
| ===== Items ===== | ===== Items ===== |
| '/usr/sbin/mariadbd' --datadir=$HOME/'Projects/MaNGOS-Zero/mariadb/database' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' | '/usr/sbin/mariadbd' --datadir=$HOME/'Projects/MaNGOS-Zero/mariadb/database' --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' |
| |
| cd ~/'Downloads' && mariadb-dump --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER --opt -r '$(date +%Y-%m-%d-%s)'-WoW-localhost-character0.sql' 'character0' | cd ~/'Downloads' && mariadb-dump --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER --opt -r $(date +%Y-%m-%d-%s)'-WoW-localhost-character0.sql' 'character0' |
| |
| cd ~/'Downloads' && mariadb-dump --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER --opt -r '$(date +%Y-%m-%d-%s)'-WoW-localhost-realmd0.sql' 'realmd0' | cd ~/'Downloads' && mariadb-dump --socket=$HOME/'Projects/MaNGOS-Zero/mariadb/mariadb.sock' --user=$USER --opt -r $(date +%Y-%m-%d-%s)'-WoW-localhost-realmd0.sql' 'realmd0' |
| |
| ===== Restore ===== | ===== Restore ===== |