BlueMap

BlueMap

85.1k Downloads

Add MySQL support

TrainerGamer opened this issue ยท 20 comments

commented

(This has been briefly discussed with Blue on Discord, however, I still thought it was something worth putting here in-case it becomes a possibility in the future/something worth further investigation.)

Add MySQL support to Bluemap to allow you to store the renders with MySQL instead of on the main server files. This would be a very useful addition as some Minecraft server hosts meter the amount of main server storage you can have, which can quickly be filled with the renders. However, a lot of hosts offer unmetered MySQL storage (within their fair-use policy).

Take one host I help out on their Discord:
On all their Minecraft server plans, there is a 75GB soft-limit on the main server storage, this can be removed by applying for a storage whitelist via a ticket. However this requires good reason and if most of the storage is taken up by Dynmap renders, you are not eligible for a storage whitelist. Meaning that they would basically be stuck with either having to delete their Dynmap, or switching to MySQL. But if someone was using Bluemap and was denied the storage whitelist (I assume they would be irrespective of if they were using Dynmap or Bluemap, but I may be wrong), they would basically be forced to delete it as there is no MySQL support.
This same host, however, offers 3 MySQL databases with each of their MC plans. These MySQL databases are unmetered within fair-use. So basically you can use as much MySQL storage as you like so long as you are not affecting other users/the performance of the node.

(Edit: The policy regarding storage at this particular host [PebbleHost] has changed since this issue was made. However the original point still stands as a similar policy to the one listed here is probably employed at other hosts.)

I hope you can see my point of how useful adding MySQL support would be and I hope you take it into further consideration :)

commented

If you're alright with using a library, helper (by the developer of LuckPerms) is probably the best utility for supporting MySQL, as well as other datasources such as MongoDB.

commented

Havent looked into what helper is exactly, but it seems to depend on spigot,.. bluemap is a multiplatform-project .. so that's a no-go ^^

commented

Its database modules should be multiplatform; the rest obviously isn't. Could always fork and use only what you need, considering it's MIT licensed.

commented

Apparently for MySQL, you need to add JDBC connector jar for fabric and forge because it's not included directly like in spigot.
Here I have found a project that did that : https://github.com/kosma/mysql-jdbc-mod

commented

@mrsolarius there is already a working version with sql support on a branch ;)
it just needs more testing and waits for a couple of further changes to the configs etc to be releaseable

commented

@larssieboy18 What host do you think I am talking about laughing

Pebble right? :)

Yessir

Just so you know, pebble has a storage limit on MySQL too :D I've had my database deleted before it was about 120-130GB. If your world(s) isn't too big you probably won't get there but just letting you know.

commented

Just so you know, pebble has a storage limit on MySQL too :D I've had my database deleted before it was about 120-130GB. If your world(s) isn't too big you probably won't get there but just letting you know.

Yeah, it is something they've changed since this issue was made haha

I'll edit the original issue post to clear up any confusion ๐Ÿ˜„

commented

Implemented in 2.0

commented

Wonderful !!!
Thank you ๐Ÿ˜Œ

commented

It would be better if Nginx can display the real-time location of the players after using mysql

commented

I would really like to see this as well, as I have reached my cap of storage of my server on the host that (I think) you are talking about.

commented

@larssieboy18 What host do you think I am talking about ๐Ÿ˜†

commented

@larssieboy18 What host do you think I am talking about ๐Ÿ˜†

Pebble right? :)

commented

@larssieboy18 What host do you think I am talking about ๐Ÿ˜†

Pebble right? :)

Yessir

commented

This is the only reason I'm avoiding this plugin right now. I would honestly pay money for MySQL support haha!!

Regardless, there should be an in-game command to convert the flat-files into MySQL

commented

+1

commented

(Node to also consider MongoDB support with this)

commented

+1
MySQL is almost a requirement for such large data structures like dynmap or BlueMaps

commented

+1

commented

+1, this is the only reason I'm not using the plugin yet.