Is my application ever going to become inaccessible on the internet if I leave everything with the deprecated mysql_* extension?
Your application will only break if and when the server it is running on is upgraded to a PHP version that doesn't support the old API. If your server doesn't get upgraded to PHP 5.5, then your app will continue running as is indefinitely. Nothing else on the outside internet will affect it in that respect; only upgrades to your own server are relevant.
For the time being, php 5.4 is still actively supported, so you can happily stay on that version without needing to worry about your code suddenly breaking.
However, at some point in the future, for one reason or another, you will need to upgrade to PHP 5.5 or higher. PHP 5.4 will become end-of-life, and a move to 5.5 will be recommended. Or if you're using a shared hosting account, you may not even have any choice over your PHP version. So yes, you should expect for your current code not to work with the PHP version you're using at the time. Eventually.
So while there's no immediate urgency to make the switch, you should consider doing so as soon as possible. One thing you don't want is for the day to come when things break, and find yourself caught out.
5.5 has only just been released, so you probably have a few years before it becomes the lowest version available, but take my advice; you don't want to wait till the last moment.
Should I take some time and change all the mysql_* calls and switch them with mysqli_* calls.
You stated that your app is "really robust" and "will probably not be enhanced". So it's basically in a long-term maintenance-only phase.
Given those criteria, I would say that yes, making a simple switch to the mysqli
lib is a sensible move. The changes required are fairly trivial (it sounds like you've got a handle on what to do already), and should have virtually no impact whatsoever on the rest of the software.
If your code is truly robust and well-written, you'll have it structured in such that there is a database layer of some sort, which will mean that you don't have much to do anyway.
If it's not so well structured, it might have a lot of mysql_query()
calls scattered around the code, in which case it might take a bit more work. In this case, since you're working on the code anyway, you might consider taking the time to do a bit of restructuring. Create a database layer. Maybe start using prepared statements. I'd also recommend switching to PDO rather than mysqli
. But your call -- given what you said in the question, it would be understandable if you wanted to do the minimum amount of work possible.
By the way - If you haven't done so already, you might also want to read this: Why shouldn't I use mysql_* functions in PHP?