Modcraft - The community dedicated to quality WoW modding!
Wrath of the Lich King Modding => Serverside Modding => Topic started by: Смердокрыл on September 22, 2015, 04:32:51 pm
-
Hey!
I already have a wow server and Im planning on creating a new, separate one. What should I do in order for their mysql databases not to merge (when only one server is running, I open mysql and can run both databases for some reason)?
-
Both auth and world servers have config files authserver.conf and worldserver.conf (they are located in directory specified during compilation of emulator). In those config files you can find database connection settings, they look like this.:
LoginDatabaseInfo = "127.0.0.1;3306;trinity;trinity;auth"
The only thing you will want to change is the last, "auth", thats database name.
You basically need to create a new characters and world databases for your worldserver and if you also want to create new authserver (that means that accounts will be separated and that there will NOT be one realm selection list), you will also need to create a new auth database. Otherwise you will have shared authserver and auth database for both realms.
So. Compile new core with new directories (both install and conf directories must be other than realm 1s) and
A - you want 2 realmlists - create new auth, characters and world databases and set both authserver's and worldserver's connections to them, you will also need to choose other than base ports on which auth and worldserver run (base are 3724 for auth and 8085 for world). Include authserver's port in client's realmlist file to connect to correct authserver.
B - you want one realmlist with 2 realms with shared account database - delete new authserver and authserver.conf, you won't need them, and just create new world and characters databases, configure new worldserver's connection settings in config so it connects to these new databases and again, don't forget to change worldservers base port 8085 to something else, 8086 will do - remember, you can't have 2 servers on same port. And btw, don't forget to include new realm in auth.realmlist table in database, in this case that table will contain 2 rows.
I hope I made myself enough clear and didn't confuse you, feel free to ask questions.
-
These will be two completely different servers, with no single shared file.
Include authserver's port in client's realmlist file to connect to correct authserver.
How do I do that?
Also, I am using hamachi for people to connect to my server (because I use wifi, hence my ip changes). Is this gonna be a problem?
-
base are 3724 for auth and 8085 for world
These ones are already used by the first server. Which ones should the 2nd one use?
-
8086 for worldserver2 works, tested it myself. For second authserver, try 3725?
About realmlist, you will just have to include authserver's port there. So instead of for instance:
set realmlist 46.28.108.57
you will have to have something like:
set realmlist 46.28.108.57:3724
Thats the whole magic cast here :D.
Btw, I have never tryed running server under hamachi and I hate, hate and once more HATE that application so much that I won't ever install it on my machine again and won't ever try it. You will have to find someone else for helping you with any issue which comes from running server on hamachi itself.
Basically, you should still be able to use set realmlist IP:port. Hopefuly.
-
I did exactly how you wrote, launched the second server's denwer (the first one's denwer was already running). A virtual hard drive was supposed to be created, but was not and also my internet stopped working. After some time, my computer crashed with the error code "BUGCODE_NDIS_DRIVER".
-
I wish I could help you more, but I have nothing to work with and my experience with running (multiple) servers on local (windows I suppose) server while people are connecting via hamachi is quite limited.
-
I wish I could help you more, but I have nothing to work with and my experience with running (multiple) servers on local (windows I suppose) server while people are connecting via hamachi is quite limited.
I dont think it has anything to do with hamachi, but if you cant help anymore - thanks (no sarcasm) for what you've done already.
Could anyone else help?
-
Obviously, ports 8086 and 3725 are closed (I checked). So, I have to use some other ports. Also, I need an alternative for the 3036 port for the mysql of the second server.
Could anyone help?
-
You could get an additional IP. That way you'll have those ports open on the new IP. Although the additional IP would cost you a few dollars.
I don't see how your 3725 is closed as WoW/Trinity auth server uses 3724 by default.
-
Also, I need an alternative for the 3036 port for the mysql of the second server.
Why the hell would you want to have 2 MySQL servers at one machine for this? It just complicates working with databases, accounts to acces them and there are possibly more issues with such thing. Aside, I have no idea how to install second MySQL server on a machine where one MySQL server already is.
-
Why the hell would you want to have 2 MySQL servers at one machine for this? It just complicates working with databases, accounts to acces them and there are possibly more issues with such thing. Aside, I have no idea how to install second MySQL server on a machine where one MySQL server already is.
So the databases of the two servers do not mix. Although, I might not fully understad what a "MySQL server" actually is.
-
auth, characters, world - that is not one databas, thats 3 databases. There can be unlimited number of databases on one MySQL server (most of folks call MySQL server "database" but thats pretty incorrect, MySQL server actually contains multiple databases).
You don't need 2 MySQL servers running on 2 different ports. There is absolutely no need of it. One server with one IP on 1 port containing 6 databases (3 for each server) will work.
-
I'll give an example:
I already have two servers installed on my computer. Therefore, I have two connections listed in navicat. However, if I run one server's denwer, I can open both connections and so both of them show me exactly the same databases of one server. But I want one connection to show one server and the other connection - the other server. Or, at least, I want to have access to the databases of both servers and not be confused between them.
-
You can read this https://dev.mysql.com/doc/refman/5.1/en ... rvers.html (https://dev.mysql.com/doc/refman/5.1/en/multiple-servers.html" onclick="window.open(this.href);return false;)
If you see exactly the same databases in both Navicat connections, its probably because you are connecting to the same MySQL server. Do both connections have the same port?
However, I agree with Amaroth you don't need 2 MySQL servers. Just create 3 additional database in your current MySQL server and name them like
realmname_auth, realmname_char, realmname_world
-
Just create 3 additional database in your current MySQL server and name them like
realmname_auth, realmname_char, realmname_world
But what about all the "world" stuff like items, npcs, etc? They should not be same on the two servers.
-
And they won't.
Server1 will have (for instance):
auth1
characters1
world1
Server2 will have (for instance):
auth2
characters2
world2
All those 6 databases will be on 1 MySQL server, yes, but that doesn't matter, because server 1 will be using only databases with 1 and server 2 will be using only databases with 2. So whatever you change in world2 database will NOT be changed in world1 database (unless you copy your changes) and thus it won't affect server 1 in any way. So there is really absolutely no need of 2 MySQL servers.
-
Thanks for explanation, now I understand fully. Questions now: 1)How do I tell denwer to create the "...2" databases? 2)In order for the 2nd server to have a different realm name, I need to change it in Auth2/realmlist, right?
-
Well, I use SQLYog for managing my databases, creating backups, importing/exporting SQL dumps and so on. In SQLYog, you just need to right click into blank place in database tree, select Create Database (ctrl+D btw) and there you go.
Fill in name you wish to give to database, charset utf8 and collation utf8_general_ci always worked for me and is used by TC2 by default. Using another settings might sometimes not work properly, but I am not sure about that. Then you will just need to fill that database, so you will most likely import new blizzlike TC2 database. Or you can copy old databases to new ones, so you will have 3 pairs of same databases, but you can modify any of those pairs without modifying 2nd one.
Process would be similiar in any other MySQL editor, if you don't want to use SQLYog.
-
Well, I use SQLYog for managing my databases, creating backups, importing/exporting SQL dumps and so on. In SQLYog, you just need to right click into blank place in database tree, select Create Database (ctrl+D btw) and there you go.
Fill in name you wish to give to database, charset utf8 and collation utf8_general_ci always worked for me and is used by TC2 by default. Using another settings might sometimes not work properly, but I am not sure about that. Then you will just need to fill that database, so you will most likely import new blizzlike TC2 database. Or you can copy old databases to new ones, so you will have 3 pairs of same databases, but you can modify any of those pairs without modifying 2nd one.
Process would be similiar in any other MySQL editor, if you don't want to use SQLYog.
(http://i1.kym-cdn.com/entries/icons/original/000/006/423/ragecomic.png)
-
I thought the databases are somehow created when I run denwer...
-
I tried to add the 2 to the names of the folders in usr/local/mysql-5.5 but still, no additional databases are created and the "run" and "stop" files from any server affect all the servers.
-
Idk what is "denwer".
Why should be databases made "just by themselves"? How would that possibly work while MySQL really is not just made for TC2, it is database server used by... whoever you can imagine... Do you think that shops use auth, characters and world database? Ofc nope :D. They are made by create script which is being downloaded with TC2 core and which is being executed during database installation.
(http://s28.postimg.org/8nephb219/image.jpg)
(http://s21.postimg.org/9bkpaqldz/image.jpg)
I suppose that actually reading something about MySQL would help you before you start to run multiple realms and such things.
-
I suppose that actually reading something about MySQL would help you before you start to run multiple realms and such things.
That's really the best hint to give :-)
Seriously, if you are really running 2 different mysql servers, stop that and deinstall one. IMHO there is only one reason to run different mysql servers and this is if you need for some reason servers with different versions. F. ex. for old software or for developing.
May the best thing is to deinstall both and make a proper installation of exactly 1 server. (Before backup data if necessary)
Than install the 3 databases for TC server ONE and 3 databases with different name for TC server TWO. Put the correct database names in the config files. The mysql port will be for all the mysql default port 3306.
Personally I always install together with a mysql server also apache/php/mysqladmin. It's quite nice to work with mysqladmin sometimes as an alternative to SQLyog. Additionally you can write very easy some scripts in php for modifying stuff in your databases or create some custom interfaces. However you have to read and learn such trivial things by reading tutorials in the internet.
-
Idk what is "denwer"
This is in russian, but you can use automatic translation (in google chrome for sure): www.denwer.ru/ (http://www.denwer.ru/" onclick="window.open(this.href);return false;)
If you download a pre compilled server from any russian website (which is what I do, since I cannot compile a server myself due to 1)the process being very complicated 2)only 3.5.5 and WoD files available for download on trinity core website), this tool is gonna be in there.
-
Seems to be a classical WAMP package. As I told. With Apache/PHP/mysqladmin and so on.
Hope it is virus free ;-)
Beside of that: You don't need to compile a mysql server. There are also binaries to download:
https://dev.mysql.com/downloads/mysql/ (https://dev.mysql.com/downloads/mysql/" onclick="window.open(this.href);return false;)
Just be sure that you have only 1 mysql server installed at the end.
As far as I know TC has a very detailed wiki with a lot of links too. Follow exactly the step by step installation guide.
http://collab.kpsn.org/display/tc/TrinityCore+Home (http://collab.kpsn.org/display/tc/TrinityCore+Home" onclick="window.open(this.href);return false;)
-
Anyway, I figured it out. Thanks Amaroth, Saifi0102, and Magnus for your help!
P.S. If anyone of you knows how to work with FuTa, could you please help me a bit more?)
viewtopic.php?f=10&t=9732 (http://modcraft.io/viewtopic.php?f=10&t=9732" onclick="window.open(this.href);return false;)
-
Oh, no, I didnt figure it out. I now have the databases appear in the connection, but when I try to open one it tells me e.g. "table 'auth2.realmlist' doesnt exist"
===============================================
Nvm, fixed it
-
But you have imported the data and table structures from Trinity ?
-
Oh my. Precompiled repack.
Toss that into garbage bin and learn how2trinity and how2mysql :D. At least one day do so. By actually compiling emu and installing all needed things by yourself, like MySQL databases and so on you will learn quite a lot. And knowledge is the biggest power you can have while modding. Until then I can imagine that most of things I wrote didn't make any sense to you. Well, its still great that you have finally made it, let us know if there is anything more.
-
Oh my. Precompiled repack.
As I said, I need trinity 4.3.4. Not mangos, not 3.3.5 and not WoD. Only trinity 4.3.4. And I have only managed to find that as a precompiled repack.
I can imagine that most of things I wrote didn't make any sense to you
I find your lack of faith disturbing.
let us know if there is anything more.
As you wish: viewtopic.php?f=10&t=9732 (http://modcraft.io/viewtopic.php?f=10&t=9732" onclick="window.open(this.href);return false;)
-
https://github.com/TrinityCoreArchive/TrinityCore434 (https://github.com/TrinityCoreArchive/TrinityCore434" onclick="window.open(this.href);return false;)
But as I told, 4.3.4 is not supported any more. And questions about installing Trinity Core you should ask better in the Trinity forum. But they never will support any repack. Even better never telling the word 'repack' there.
Edit: Just have seen, the link is a fork of TrinityCore branch.
-
As I said, I need trinity 4.3.4. Not mangos, not 3.3.5 and not WoD.
Discussion went rather long, sorry, I forgot that.
I find your lack of faith disturbing.
It was meant like "ah, that was problem..." rather than meant as offence, sorry if it disturbed you. It was not my intention. I always struggle a little bit when writing in english to not make too many mistakes, and to make others understand what I really want to say as it is sometimes just too much for my not so awesome grammar and phrase knowledge.
About your second problem, I have never really used FuTa, I am just planning to check it out for a few months :D. Its pure laziness, nothing more to say about that. I would write there something quite a while ago if I had any idea.
-
rather than meant as offence, sorry if it disturbed you
It did not at all. I just joked)
-
https://github.com/TrinityCoreArchive/TrinityCore434
Thanks a lot for the link! Is there any tutorial on compiling it?
-
The official Trinity Wiki:
http://collab.kpsn.org/display/tc/TrinityCore+Home (http://collab.kpsn.org/display/tc/TrinityCore+Home" onclick="window.open(this.href);return false;)
The official Trinity Forum:
http://community.trinitycore.org/ (http://community.trinitycore.org/" onclick="window.open(this.href);return false;)
The link above I gave you is a fork ! This means it is not the official Trinity repository. But it seems 4.x branch is anyway not any more supported, so that this user was made an archive.
Go to the forum and search about the postings for 4.x. May you get some more information there.
-
The link above I gave you is a fork ! This means it is not the official Trinity repository. But it seems 4.x branch is anyway not any more supported, so that this user was made an archive.
At the top of files it says "Working repo moved to https://gitlab.com/trinitycore/TrinityCore_434 (https://gitlab.com/trinitycore/TrinityCore_434" onclick="window.open(this.href);return false;)". What does it mean? If I follow that link, there is also a 4.3.4 repo available for download. But above that download button, it says "Since gitlab don't allows to attach files, TDB will be release into: https://github.com/TrinityCoreLegacy/Tr ... e/releases (https://github.com/TrinityCoreLegacy/TrinityCore/releases" onclick="window.open(this.href);return false;)". And what does this mean?
-
The last one means that the TDB (Trinity Database) is part of the linked repository because they are not able to offer it as a direct download.
But I don't know what's the difference between these both repositories. You may can ask in Trinity forum.
-
The last one means that the TDB (Trinity Database) is part of the linked repository because they are not able to offer it as a direct download.
Where exactly in the repository should I move these files to?
-
The database you have to import into your mysql server. Read in TC wiki how to install a mysql server and to import the database file and updates.
http://collab.kpsn.org/display/tc/Requirements (http://collab.kpsn.org/display/tc/Requirements" onclick="window.open(this.href);return false;)
http://collab.kpsn.org/display/tc/Datab ... stallation (http://collab.kpsn.org/display/tc/Databases+Installation" onclick="window.open(this.href);return false;)
-
When I try to compil, cmake returns an error:
[attachment=0:1bi7rik2]CMakeError.log[/attachment:1bi7rik2]
-
Can anyone help?
-
Can anyone help?
I have no idea what it says. Can not help you properly.
I would assume, though, that you use the wrong compiler selection for cmake.
-
you use the wrong compiler selection for cmake.
What do you mean?
-
This is a really good tutorial for 3.3.5 TrinityCore: http://emudevs.com/showthread.php/4821- ... dows-Vista (http://emudevs.com/showthread.php/4821-Wotlk-3-3-5a-Optional-Eluna-Unknown96-s-Compiling-Tutorial-(Windows-Vista" onclick="window.open(this.href);return false;))-With-Pictures
Afaik there are not much differences between the compilation of 3.3.5 and 4.3.4, so you can look up the tutorial, compare it with the tutorial in the TC wiki and hopefully compile it.
I'm at work so i don't want to download your .log file atm.
-
I used this (http://www.ac-web.org/forums/showthread.php?185840-How-to-Compile-a-4-3-4-Cataclysm-Server) guide to compile, except for the core files which I got from here (https://gitlab.com/trinitycore/TrinityCore_434) (also adding the files from the TDB update (https://github.com/TrinityCoreLegacy/TrinityCore/releases) into the core folder).
-
Which visual studio do you have ?
-
Which visual studio do you have ?
Visual Studio 2010 (torrented though).
-
Make sure you pick Visual Studio 10 2010. The others do not work.
-
Make sure you pick Visual Studio 10 2010. The others do not work.
You mean I download Visual Studio 10 2010 or I pick it in Configuration? If the latter, then there are 3 of them: Visual Studio 10 2010, Visual Studio 10 2010 IA64 and Visual Studio 10 2010 Win64. I tried all the three.
-
Make sure you pick Visual Studio 10 2010. The others do not work.
You mean I download Visual Studio 10 2010 or I pick it in Configuration? If the latter, then there are 3 of them: Visual Studio 10 2010, Visual Studio 10 2010 IA64 and Visual Studio 10 2010 Win64. I tried all the three.
Ah, wait. Is it using boost ? With boost, trinity switched over to use 2011, iirc.
-
Ah, wait. Is it using boost ? With boost, trinity switched over to use 2011, iirc.
Wut?
If you mean Visual Studio 2011, its not in the list in Cmake. And what is boost?
-
That makes things more complicated, I am not sure what is possible to be done with this.
-
That makes things more complicated, I am not sure what is possible to be done with this.
Wht should I do?(( Maybe download another version of Cmake?
-
https://www.visualstudio.com/products/v ... t-editions (https://www.visualstudio.com/products/vs-2015-product-editions" onclick="window.open(this.href);return false;)
Get the Community Edition.
And no, they switched to at least 2011, so 2010 is no longer supported. You'd have to make chances to the source to allow 2010 to be used. Even then, I doubt it works. A lot of new standards are used.
-
Get the Community Edition.
Thanks for advice, I will.
And no, they switched to at least 2011, so 2010 is no longer supported. You'd have to make chances to the source to allow 2010 to be used. Even then, I doubt it works. A lot of new standards are used.
I mean is there a cmake version that has 2011 in the list? Mine has 2010 and then jumps directly to 2012.
-
Get the Community Edition.
Thanks for advice, I will.
And no, they switched to at least 2011, so 2010 is no longer supported. You'd have to make chances to the source to allow 2010 to be used. Even then, I doubt it works. A lot of new standards are used.
I mean is there a cmake version that has 2011 in the list? Mine has 2010 and then jumps directly to 2012.
It's 2012, there was no release in 2011. A common confusion, so to speak.
EDIT: Well, look at that, I did it too... Hah ;)
-
EDIT: Well, look at that, I did it too... Hah ;)
What did you do too?
-
Now, having the new visual studio downloaded, cmake managed to hold for a bit longer..
[attachment=2:9c4uv3s4]cmake.jpg[/attachment:9c4uv3s4]
The logs are still unreadable, but just in case:
[attachment=1:9c4uv3s4]CMakeError.log[/attachment:9c4uv3s4]
[attachment=0:9c4uv3s4]CMakeOutput.log[/attachment:9c4uv3s4]
-
EDIT: Well, look at that, I did it too... Hah ;)
What did you do too?
And no, they switched to at least 2011, so 2010 is no longer supported.
There is no vs 2011, because 10 was released in 2011. They switched over to visual studio 2012 after that.
You forgot openssl. Make sure that you have all the includes properly in. They may be one reason for the fail. This should work though. Then again, 4.3.4 really is decapitated...Eh. Never used it too much personally. I guess I am missing on stuff.
-
You forgot openssl.
Will this (http://slproweb.com/products/Win32OpenSSL.html) do?
-
"OpenSSL- Download the 32bit version. Or you can get both if you plan to compile both 32 and 64bit, they can coexist side by side.
Find the 32bit version by finding the latest Win32 OpenSSL that is NOT the "light" version.
Example: Win32 OpenSSL v1.0.1m
Find the 64bit version by finding the latest Win64 OpenSSL that is NOT the "light" version.
Example: Win64 OpenSSL v1.0.1m
Note #1: If you get a "Missing Microsoft Visual C++ 2008 Redistributables" error message while installing OpenSSL,
download the Microsoft Visual C++ 2008 Redistributable Package (x86) (1.7MB Installer) and install it.
If you need 64bit support, download and install the Microsoft Visual C++ 2008 Redistributable Package (x64) .
Both these are linked from http://slproweb.com/products/Win32OpenSSL.html (http://slproweb.com/products/Win32OpenSSL.html" onclick="window.open(this.href);return false;) as well.
Note #2: While installing OpenSSL, choose The OpenSSL binaries (/bin) directory (NOT "The Windows system directory")
when given the choice on where to copy the OpenSSL DLLs. These DLLs will need to be located easily for Core Installation. "
- From http://collab.kpsn.org/display/tc/Requirements
-
I installed the 64 bit version but still have an error: it cant find some "ZMQ libraries":
[attachment=2:3dk5b2ky]cmake.jpg[/attachment:3dk5b2ky]
[attachment=1:3dk5b2ky]CMakeError.log[/attachment:3dk5b2ky]
[attachment=0:3dk5b2ky]CMakeOutput.log[/attachment:3dk5b2ky]
-
http://zeromq.org/ (http://zeromq.org/" onclick="window.open(this.href);return false;)
Follows instructions for 6.x, they are equal for zmq.
-
Hey!
I've done all the steps from the tutorial, I managed to configure cmake and generate the needed files. Then I open TrinityCore.sln, I rclick on the top "Solution "TrinityCore"" thing, do "Clear solution" and then, having set the thing at the top to "Release x64", I rclick again and do "Build solution". I wait for some time until it says its finished, but the actual server files that were supposedly created are nowhere to be found! Whats the problem?
*I translated the button names myself because the stupid program doesnt allow me to change language to english, so some of them could be wrong.
-
Hey!
I've done all the steps from the tutorial, I managed to configure cmake and generate the needed files. Then I open TrinityCore.sln, I rclick on the top "Solution "TrinityCore"" thing, do "Clear solution" and then, having set the thing at the top to "Release x64", I rclick again and do "Build solution". I wait for some time until it says its finished, but the actual server files that were supposedly created are nowhere to be found! Whats the problem?
*I translated the button names myself because the stupid program doesnt allow me to change language to english, so some of them could be wrong.
Build folderbinRelease
-
Build folderbinRelease
I did check it and its empty