Short answer: Yes you are.
Long answer: the MySQL server does not speak HTTP. You need a database driver that knows how to speak to MySQL server when writing a program or script.
Well Perl does MySQL using the DBI module and of course PHP does MySQL too. I think the only difference is that if you run PHP as Apache-PHP and not CGI, you can do persistent connections. (AFAIK mod_perl is required for persistent connections in Perl). C++ is probably like Perl except of course you're running a binary and not a script.
Again Perl comes with DBI which is a database driver interface and its a snap to install the mysql driver module and start writing MySQL scripts. PHP has its own library, too. Both programming languages have on-line documentation - http://www.php.net/ and http://www.cpan.org/ - not to mention http://www.mysql.com/ where you find the MySQL documentation. You could even install Apache, MySQL and Perl or PHP on your own machine and develop CGI locally if you wanted to.
And of coruse theres dozens of tutorials and aritcles (Google is your friend)
Perl / MySQL / HTML+CSS