Hi,
I have problem and the error is "CDbConnection failed to open the DB connection: SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client"
Can anyone tell me how to solve this problem?
hosting provide
php verison : 5.4.24
mysql :5.5.34-cll - MySQL Community Server (GPL)
main.php
<?php
// uncomment the following to define a path alias
// Yii::setPathOfAlias('local','path/to/local-folder');
// This is the main Web application configuration. Any writable
// CWebApplication properties can be configured here.
return array(
'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..', //where is your root project
//'name1'=>'Welcome',
'name'=>'Big Sale Perfume',
'theme'=>'purple', //My Web Application
'sourceLanguage'=>'en_us',
'language'=>'en',
// preloading 'log' component
'preload'=>array('log'),
// autoloading model and component classes
'import'=>array( //what are the classics
'application.models.*',
'application.components.*',
),
'modules'=>array(
// uncomment the following to enable the Gii tool
/*'gii'=>array(
'class'=>'system.gii.GiiModule',
'password'=>'123',
// If removed, Gii defaults to localhost only. Edit carefully to taste.
'ipFilters'=>array('127.0.0.1','::1'),
),*/
),
// application components
'components'=>array(
'user'=>array(
// enable cookie-based authentication
'allowAutoLogin'=>true,
),
// uncomment the following to enable URLs in path-format
/*
'urlManager'=>array(
'urlFormat'=>'path',
'rules'=>array(
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
),
*/
//'db'=>array(
// 'connectionString' => 'sqlite:'.dirname(__FILE__).'/../data/testdrive.db',
// ),
// uncomment the following to use a MySQL database
'db'=>array(
'class'=>'CDbConnection',
'connectionString' => 'mysql:host=localhost;dbname=test1',
'emulatePrepare' => true,
'username' => 'username',
'password' => 'password',
'charset' => 'utf8',
),
'errorHandler'=>array(
// use 'site/error' action to display errors
'errorAction'=>'site/error',
),
'log'=>array(
'class'=>'CLogRouter',
'routes'=>array(
array(
'class'=>'CFileLogRoute',
'levels'=>'error, warning',
),
// uncomment the following to show log messages on web pages
/*
array(
'class'=>'CWebLogRoute',
),
*/
),
),
),
// application-level parameters that can be accessed
// using Yii::app()->params['paramName']
'params'=>array(
// this is used in contact page
'adminEmail'=>'webmaster@example.com',
),
);
error log
2014/01/21 21:14:48 [error] [exception.CDbException] exception 'CDbException' with message 'CDbConnection failed to open the DB connection: SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client' in /home/vbetechc/public_html/testing4/framework/db/CDbConnection.php:382
Stack trace:
#0 /home/vbetechc/public_html/testing4/framework/db/CDbConnection.php(330): CDbConnection->open()
#1 /home/vbetechc/public_html/testing4/framework/db/CDbConnection.php(308): CDbConnection->setActive(true)
#2 /home/vbetechc/public_html/testing4/framework/base/CModule.php(387): CDbConnection->init()
#3 /home/vbetechc/public_html/testing4/framework/base/CApplication.php(450): CModule->getComponent('db')
#4 /home/vbetechc/public_html/testing4/framework/db/ar/CActiveRecord.php(634): CApplication->getDb()
#5 /home/vbetechc/public_html/testing4/framework/db/ar/CActiveRecord.php(667): CActiveRecord->getDbConnection()
#6 /home/vbetechc/public_html/testing4/framework/db/ar/CActiveRecord.php(1455): CActiveRecord->getCommandBuilder()
#7 /home/vbetechc/public_html/testing4/protected/components/UserIdentity.php(20): CActiveRecord->find('username=:u', Array)
#8 /home/vbetechc/public_html/testing4/protected/models/LoginForm.php(52): UserIdentity->authenticate()
#9 /home/vbetechc/public_html/testing4/framework/validators/CInlineValidator.php(42): LoginForm->authenticate('password', Array)
#10 /home/vbetechc/public_html/testing4/framework/validators/CValidator.php(213): CInlineValidator->validateAttribute(Object(LoginForm), 'password')
#11 /home/vbetechc/public_html/testing4/framework/base/CModel.php(159): CValidator->validate(Object(LoginForm), NULL)
#12 /home/vbetechc/public_html/testing4/protected/controllers/SiteController.php(120): CModel->validate()
#13 /home/vbetechc/public_html/testing4/framework/web/actions/CInlineAction.php(49): SiteController->actionLogin()
#14 /home/vbetechc/public_html/testing4/framework/web/CController.php(308): CInlineAction->runWithParams(Array)
#15 /home/vbetechc/public_html/testing4/framework/web/CController.php(286): CController->runAction(Object(CInlineAction))
#16 /home/vbetechc/public_html/testing4/framework/web/CController.php(265): CController->runActionWithFilters(Object(CInlineAction), Array)
#17 /home/vbetechc/public_html/testing4/framework/web/CWebApplication.php(282): CController->run('login')
#18 /home/vbetechc/public_html/testing4/framework/web/CWebApplication.php(141): CWebApplication->runController('site/login')
#19 /home/vbetechc/public_html/testing4/framework/base/CApplication.php(180): CWebApplication->processRequest()
#20 /home/vbetechc/public_html/testing4/index.php(14): CApplication->run()
#21 {main}
Page 1 of 1
Cdbconnection Failed To Open The Db Connection: Sqlstate[Hy000] [2054] The Server Requested Authentication Method Unknown To The Client
#2
Posted 21 January 2014 - 09:00 AM
This indicates a php version incompatibility with mysql libraries installed on your webhost.
Contact server administrator to resolve the issue.
Contact server administrator to resolve the issue.
God is real unless declared as integer
#3
Posted 21 January 2014 - 11:13 PM
thank for reply.
But when im trying to use this code:
$mysqlConnection = mysqli_connect($server, $username, $password,$database);
if (!$mysqlConnection)
{
die('Could not connect: ' . mysql_error());
}
$query = mysql_query("select * from user");
while ($row = mysql_fetch_assoc($query)) {
echo $row['username'];
}
mysqli_close($mysqlConnection);
this can bring me with the result, is it cause by other problem beside php incompatibility with mysql?
i also try to use the requirement detail that is look like no problem.
But when im trying to use this code:
$mysqlConnection = mysqli_connect($server, $username, $password,$database);
if (!$mysqlConnection)
{
die('Could not connect: ' . mysql_error());
}
$query = mysql_query("select * from user");
while ($row = mysql_fetch_assoc($query)) {
echo $row['username'];
}
mysqli_close($mysqlConnection);
this can bring me with the result, is it cause by other problem beside php incompatibility with mysql?
i also try to use the requirement detail that is look like no problem.
Attached File(s)
-
Untitled1.png (46.69K)
Number of downloads: 8
#4
Posted 22 January 2014 - 02:28 AM
Something's wrong with PDO?..
Try this instead:
Try this instead:
$mysqlConnection = new PDO("mysql:host=...;dbname=...", $username, $password);
God is real unless declared as integer
#5
Posted 22 January 2014 - 02:49 AM
hm... look like it return me another error :
PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password].
Here is the error_log in runtime
2014/01/22 15:42:13 [error] [php] PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password] (/home/vbetechc/public_html/testing4/protected/views/site/index.php:24)
Stack trace:
#0 /home/vbetechc/public_html/testing4/framework/web/CBaseController.php(95): SiteController->renderInternal()
#1 /home/vbetechc/public_html/testing4/framework/web/CController.php(869): SiteController->renderFile()
#2 /home/vbetechc/public_html/testing4/framework/web/CController.php(782): SiteController->renderPartial()
#3 /home/vbetechc/public_html/testing4/protected/controllers/SiteController.php(33): SiteController->render()
#4 /home/vbetechc/public_html/testing4/framework/web/actions/CInlineAction.php(49): SiteController->actionIndex()
#5 /home/vbetechc/public_html/testing4/framework/web/CController.php(308): CInlineAction->runWithParams()
#6 /home/vbetechc/public_html/testing4/framework/web/CController.php(286): SiteController->runAction()
#7 /home/vbetechc/public_html/testing4/framework/web/CController.php(265): SiteController->runActionWithFilters()
#8 /home/vbetechc/public_html/testing4/framework/web/CWebApplication.php(282): SiteController->run()
#9 /home/vbetechc/public_html/testing4/framework/web/CWebApplication.php(141): CWebApplication->runController()
#10 /home/vbetechc/public_html/testing4/framework/base/CApplication.php(180): CWebApplication->processRequest()
#11 /home/vbetechc/public_html/testing4/index.php(14): CWebApplication->run()
REQUEST_URI=/
in /home/vbetechc/public_html/testing4/protected/views/site/index.php (24)
in /home/vbetechc/public_html/testing4/protected/controllers/SiteController.php (33)
in /home/vbetechc/public_html/testing4/index.php (14)
PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password].
Here is the error_log in runtime
2014/01/22 15:42:13 [error] [php] PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password] (/home/vbetechc/public_html/testing4/protected/views/site/index.php:24)
Stack trace:
#0 /home/vbetechc/public_html/testing4/framework/web/CBaseController.php(95): SiteController->renderInternal()
#1 /home/vbetechc/public_html/testing4/framework/web/CController.php(869): SiteController->renderFile()
#2 /home/vbetechc/public_html/testing4/framework/web/CController.php(782): SiteController->renderPartial()
#3 /home/vbetechc/public_html/testing4/protected/controllers/SiteController.php(33): SiteController->render()
#4 /home/vbetechc/public_html/testing4/framework/web/actions/CInlineAction.php(49): SiteController->actionIndex()
#5 /home/vbetechc/public_html/testing4/framework/web/CController.php(308): CInlineAction->runWithParams()
#6 /home/vbetechc/public_html/testing4/framework/web/CController.php(286): SiteController->runAction()
#7 /home/vbetechc/public_html/testing4/framework/web/CController.php(265): SiteController->runActionWithFilters()
#8 /home/vbetechc/public_html/testing4/framework/web/CWebApplication.php(282): SiteController->run()
#9 /home/vbetechc/public_html/testing4/framework/web/CWebApplication.php(141): CWebApplication->runController()
#10 /home/vbetechc/public_html/testing4/framework/base/CApplication.php(180): CWebApplication->processRequest()
#11 /home/vbetechc/public_html/testing4/index.php(14): CWebApplication->run()
REQUEST_URI=/
in /home/vbetechc/public_html/testing4/protected/views/site/index.php (24)
in /home/vbetechc/public_html/testing4/protected/controllers/SiteController.php (33)
in /home/vbetechc/public_html/testing4/index.php (14)
#6
Posted 22 January 2014 - 03:14 AM
Next steps depend on how much access do you have to your server.
Here's similar thread with solutions.
Here's similar thread with solutions.
God is real unless declared as integer
#7
Posted 23 January 2014 - 09:16 AM
thank you for your reply 
my problem is solved by the hosting stuff

my problem is solved by the hosting stuff
Share this topic:
Page 1 of 1