Embedded database vs mySQL

why most people prefer using mySQL to embbedded as DB?

i think oracle is better than mySQL,isn’t it???

“better” would be relative to your scenario. Oracle Database is a very heavy-weight database server, requiring a lot of dedicated resources to run well. MySQL, tends to be “lighter-weight” in nature. Also until recently, I belive Oracle did not have a “free to play” version of Oracle Database, meaning for most, MySQL was/is more easily accessible both to use and to learn on.

Regarding choosing the embedded database over an external one such as MySQL or Oracle Database, – people tend to use the embedded database for small Openfire deployments or in situations where the data on openfire is not critical (test server, etc). Once people start to scale their deployments, then after a certain point, the embedded database won’t perform on the same level – which is usually when those who switch, do so.

Also, a lot of Sys Admins are likely more familiar and feel more comfotable maintaining a MySQL databse over the embedded once since they may have more experience with it (for backing up, etc). – although it should be noted the embedded database is basically just a file on your hard drive someplace inside the openfire install directory – and simply copying that file will suffice as a backup.

It should also be noted that the embedded database is dead simple to use in Openfire and requires no special setup – basically it “just works” making it very nice to get up and running quickly if you don’y anticipate having a huge number of concurrent users.

So basically in summary, it comes down to your expected deployment scale, and your familiarity level.

does embedded DB has limitation of users??

maybe it will stuck if there are more than 50 users on spark?

efendi liu wrote:

maybe it will stuck if there are more than 50 users on spark?

No, it won’t. I have 220 users (around 180 online now). I don’t think any database has a limitation of users (or entries, what users are really to database). This is more a performance question. How fast will it perform with particular amount of users and usage. E.g. it may work with 2000 users, but maybe MySQL will operate faster with so many users.

The embedded database runs in-memory. If you plan to store a lot of logs (archive plugin), create a lot of rooms, create users with avatars then the memory usage will grow. If you have 64 bit and are willing to assign enough memory to Openfire then there should be no limitations.