thewca / worldcubeassociation.org

All of the code that runs on worldcubeassociation.org
https://www.worldcubeassociation.org/
GNU General Public License v3.0
320 stars 172 forks source link

Finding a replacement to phpMyAdmin #4432

Open viroulep opened 4 years ago

viroulep commented 4 years ago

At some point we want to drop PHP to rely on a single server-side language, so we'll need to find a replacement for that. I quickly look for alternatives and found this: https://github.com/igorkasyanchuk/rails_db

Anyone has experience with that?

It might be worth to do some experiment with that on staging with the WRT (as I believe they are pretty much the only ones using phpMyAdmin).

devaka commented 4 years ago

phpMyAdmin can work with remote DBs. So you can have single server-side language and use PMA from other server you want.

viroulep commented 4 years ago

True! We also don't hack into phpmyadmin, so the issue here is rather to avoid having to deal with anything related to php, which includes paying and monitoring an extra server :)

jfly commented 4 years ago

Some tangentially related ideas:

dunkOnIT commented 2 years ago

@gregorbg This issue raises the question of abandoning phpMyAdmin. Your strategy document indicates that we can continue to run it with no changes, and @Jambrose777's comment indicates the possibility of containerising with Docker.

Given the state of this issue, my proposal is that we backlog the idea, close the issue, and continue with phpMyAdmin until the rest of the infrastructure is up to par, at which point we could revisit this matter.

Let me know your thoughts.

gregorbg commented 2 years ago

The reason why this issue exists is that ideally we want to move away from PHP entirely in favor of running our website software stack on one single programming language.

Unfortunately, there is no viable alternative (at least to my knowledge) to PhpMyAdmin in terms of functionality and features. So abstracting away the "ugly" PHP part by running a Docker container is the closest we can realistically come to abandoning PHP. Closing this issue entirely sounds a bit dangerous in terms of us potentially forgetting about all of the valuable points and ideas already raised in this discussion. (in my opinion, if an issue is Open it doesn't automatically mean we have to treat it with high priority)

dunkOnIT commented 2 years ago

Agree - I think the problem I was trying to solve was having an issues list populated by issues where no work is expected in the near-term. I've just added a "backlog" label though, which allows us to filter as needed, without abstracting away the discussion.

Hope that's ok!

campos20 commented 2 years ago

Our database is already protected by our VPN. What about creating a (2 factor) way for a member to connect to our vpn and then the person to connect using a database administration tool (like dbeaver)? I haven't used phpmyadmin for dbeaver does charts, sessions... I'm sure we could use similar software as well.