>>>>> "Thomas" == Thomas P Meyer <tpmeyer@stripped> writes:
Thomas> I was using postgres on linux for the backend of web applications, and
Thomas> was
Thomas> pleased except for speed, so I switched to mySQL. The performance
Thomas> did indeed increase dramatically, BUT now the connectivity just a little
Thomas> flakey.
Thomas> about 3 per 1000 hits on the database DON'T connect, and my application
Thomas> ends up with a server error.
Thomas> I'm using RogueWave as my C++/DB layer, and the error is in the initial
Thomas> database connection, and doesn't get trapped by try() catch():
Thomas> RWDBDatabase DBConnect(const RWCString& Name)
Thomas> {
Thomas> RWDBManager::setErrorHandler (genericRWDBHandler);
Thomas> try
Thomas> {
Thomas> RWDBDatabase dbase = RWDBManager::database(
Thomas> "ODBC", // RW access library name
Thomas> "mysql", // server name
Thomas> "user", // user name
Thomas> "secret", // password
Thomas> Name); // database name
Thomas> return dbase;
Thomas> }
Thomas> catch(RWxmsg x)
Thomas> {
Thomas> ProgError("Can't Connect");
Thomas> }
Thomas> }
Thomas> I never experienced this with postgres, so I'm reluctant to blame
Thomas> RogueWave.
Thomas> 1) Anyone else experince this?
Thomas> 2) Any idea how I can fix this?
Thomas> 3) Any idea how I can dig deeper (mySQL log files, etc...) to get to
Thomas> the root of
Thomas> the problem.
Thomas> I've tried all the obvious, like restarting the database, rebooting,
Thomas> reinstalling, etc....
Hi!
What error do get you from MySQL when you can't connect ?
Do you have any errors in the MySQL log or error file?
Try increasing the following variables when starting safe_mysqld:
safe_mysqld -O connect_timeout=60 -O max_connections=200
you could also try adding: ulimit -n 1024 to safe_mysqld
You can also get the above error if you are running Linux, but haven't
patched the kernel to allow many file descriptors. For a busy site,
you should increase the file descriptors / process to at 1024 or 2048!
Regards,
Monty

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.