OK, I understand that...but the default is to disallow me to create one EVER. Nothing to do with remote, I can't even do it locally. There is no override.
I don't dislike the idea, but I dislike it defaulting to "I'm not allowed to do anything"
If this needs to be a security thing, then it should be a command-line argument to control it on a per server basis, not the default that prevents me doing anything:
java -cp h2.jar -allowRemoteCreation [true|false] org.h2.whatever
where false should be the old behavior, and true is the new behavior. And if you need it to default to false, that's fine, but let ME control it going the other way. Right now, I cannot do any such thing.
For another example: suppose it is the case that the server is remote, and I do not have access to the host machine at all. How do I get a DB created? Do I have to submit a request ticket to the sys admin, hope they aren't extra busy, and then wait for them to run some local creation program? They are not DB experts, so I more probably have to visit in person, let them log in, and then I do the create on their command-line. OR I have to receive SSH access. This is really not worth my time--but if I can't do a local create easily
Also:
The documentation is inconsistent. It says I CAN (first paragraph: "
By default, if the database specified in the embedded URL does not yet exist, a new (empty) database is created automatically. ") and then it says I CANNOT a few paragraphs later ("
By default remote creation of databases from a TCP connection or a web interface is not allowed."). Reality: NO I CANNOT, and I couldn't find a way where I could.
Doc also says "the system tray" but that doesn't exist on Mac or PI (or other linux, I expect), especially if I start H2 as a background process. I seldom work on Windows. (I do see a menu-bar icon for H2 that allows this creation, apparently, when I started H2 via terminal window. That won't help when I start it at boot or via systemctl, or on a remote system)
I do private work on local/isolated systems, no one except me has either physical access or login access to the machines, or the server, so this limitation isn't helping me at all. I don't do things the way you are thinking I must.
When I am starting a project needing a DB, I tend to create and delete several times an hour FOR DAYS until I have stabilized the table defs (it's simpler to just delete the entire DB and reload the SQL file than to work out what is the functional order of drop and create and truncate).
So please, change this so that I can control it from the command-line that starts the server, rather than lock me out completely.
I've been using H2 for over 10 years now, many projects, I like it, but this change is not good the way it is.
-- clint