Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::General > Archive::General Discussion

Archive::General Discussion Archive area for General Discussion's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #1  
Old 04-20-2003, 04:48 AM
moonphoenix
Sarnak
 
Join Date: Feb 2003
Posts: 81
Default Database synchronization

I know this has been covered several times in the past but did anybody ever figure out a way to implement a reliable way of syncing a mysql database?

When ever I've tried, I've found sync'ing is'nt instant enough and zoneing between servers causes characters to revert to earlier saves?
__________________
MoonPhoenix ServerOp
Reply With Quote
  #2  
Old 04-20-2003, 05:46 AM
Bardboy
Hill Giant
 
Join Date: Feb 2002
Location: Area 51
Posts: 157
Default

Sorry, I'm not sure what you mean. Do you mean replication of the database between two or more servers? This is an interesting topic and I would like to see more discussion along these lines.

I'm also interested in ways of setting up a 'virtual server' . Anything in the way of remote administration tools for the emu would be of interest to me.
__________________
They say verbal insults hurt more then physical pain. They are of course wrong, as you will soon find out when I put this toasting fork in your head.

Blackadder
Reply With Quote
  #3  
Old 04-20-2003, 07:57 AM
moonphoenix
Sarnak
 
Join Date: Feb 2003
Posts: 81
Default

Yes I mean between 2 or more servers located at different places.
For remote admin of my server I use a terminal server session for direct access (www.RealVnc.com is a good alternative for ppl without dedicated servers, but eats loads of processor time)
PHPMyAdmin for working with the database (http://www.phpmyadmin.net/ - At least basic experiance with setting up php and a webserver required)
And a couple of custom batch files which automatically restart crashed zones (with a 1 minute delay, restarting without a delay causes an authentication problem with the world server)
__________________
MoonPhoenix ServerOp
Reply With Quote
  #4  
Old 04-21-2003, 04:36 AM
Edgar1898
Senior Member
Former EQEmu Developer
Current EQ2Emu Lead Developer
 
Join Date: Dec 2002
Posts: 1,065
Default

Yes- My server and Mads server (when its up) uses replication to run one game server. This method could be used to create a stable server with an unlimited number of users (provided there are enough ppl hosting). After the first night we havent had any trouble with the syncing of data. You will need to set it up by loosely following the guide on mysql.com. I say loosely because the guide is wrong in a few places.
__________________
Lethal Encounter
Reply With Quote
  #5  
Old 04-21-2003, 04:41 AM
a_Guest03
Demi-God
 
Join Date: Jun 2002
Posts: 1,693
Default

Lethal, that sounds very promising!
__________________
It's never too late to be something great.
Reply With Quote
  #6  
Old 04-21-2003, 04:48 AM
Edgar1898
Senior Member
Former EQEmu Developer
Current EQ2Emu Lead Developer
 
Join Date: Dec 2002
Posts: 1,065
Default

heh it is :P There are a few issues though. Mysql doesnt support multiple masters, so if you want to create a very large server with 3 or more hosts, you will need to do one of the following:

1. Set it up in a series (kinda like some Christmas tree lights). Problem with this is that, just like some Christmas tree lights, if you remove a bulb, or a server in this case, the replication will stop on the distant servers.

2. Trick mysql into using multiple masters by running multiple instances of it. This will create other problems. The mysql dev team has been promising to add fail-safe replication (if the master fails, it will try another master) since version 4.0, then 4.1, then 5.1. Until they implement that, its going to be a challenge to setup replication for more than 2 servers if the servers could go down at any time.
__________________
Lethal Encounter
Reply With Quote
  #7  
Old 04-21-2003, 09:11 AM
dunce
Fire Beetle
 
Join Date: Mar 2003
Posts: 6
Default

I can probably guess as to why MySQL was chosen for this project, but is there any plan to revamp this project so you can plug any database into it?
Reply With Quote
  #8  
Old 04-21-2003, 10:27 AM
Trumpcard
Demi-God
 
Join Date: Jan 2002
Location: Charlotte, NC
Posts: 2,614
Default

No plans as of right now..

Wouldnt be too tough, but someone would need to come up with a good generic odbc api to use, and sprinkle #ifdefs all thoughout the code wherever they encounter a mysql interface call...
__________________
Quitters never win, and winners never quit, but those who never win and never quit are idiots.
Reply With Quote
  #9  
Old 04-22-2003, 03:18 AM
dunce
Fire Beetle
 
Join Date: Mar 2003
Posts: 6
Default

Thank you. I am not a programmer and really don't know what it would take. I just thought that it might make sense to offer that option. If one were to add this support. Would it be through some library call like this? <sorry for my ignorance>:

libodbc++

libodbc++ is a C++ class library for accessing SQL databases. It is designed with standards in mind, so it provides a subset of the well-known JDBC 2.0(tm) and runs on top of ODBC. It is distributed under the LGPL.

The library has shown to compile and work on Linux, FreeBSD and win32 platforms. Any environment with a reasonable compiler, standard C++ library and ODBC Driver Manager should do.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 02:39 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3