Undefined Class Constant MYSQL_ATTR_SSL_CA

 1drupal@ubuntu:/var/www/sites/openedu.localhost/docroot$ drush si site-name='OpenEDU Testing' --db-url='mysql://openedu_DBA:openedu_PASS@127.0.0.1/openedu_DB' openedu
 2PHP Fatal error:  Uncaught Error: Undefined class constant 'MYSQL_ATTR_SSL_CA' in /usr/local/share/drush/lib/Drush/Sql/Sqlmysql.php:56
 3Stack trace:
 4#0 /usr/local/share/drush/lib/Drush/Sql/SqlBase.php(164): Drush\Sql\Sqlmysql->creds()
 5#1 /usr/local/share/drush/lib/Drush/Sql/Sqlmysql.php(107): Drush\Sql\SqlBase->query('SELECT 1;', '/tmp/drush_uX7T...', '/dev/null')
 6#2 /usr/local/share/drush/commands/core/site_install.drush.inc(146): Drush\Sql\Sqlmysql->db_exists()
 7#3 /usr/local/share/drush/includes/command.inc(422): drush_core_pre_site_install('site-name=OpenE...')
 8#4 /usr/local/share/drush/includes/command.inc(231): _drush_invoke_hooks(Array, Array)
 9#5 /usr/local/share/drush/includes/command.inc(199): drush_command('site-name=OpenE...')
10#6 /usr/local/share/drush/lib/Drush/Boot/BaseBoot.php(67): drush_dispatch(Array)
11#7 /usr/local/share/drush/includes/preflight.inc(66): Drush\Boot\BaseBoot->bootstrap_and_dispatch()
12#8 /usr/local/share/drush/drush.php(12): drush_main()
13#9 {main}
14  thrown in /usr/local/share/drush/lib/Drush/Sql/Sqlmysql.php on line 56
15Drush command terminated abnormally due to an unrecoverable error.                                                                                                       [error]
16Error: Uncaught Error: Undefined class constant 'MYSQL_ATTR_SSL_CA' in /usr/local/share/drush/lib/Drush/Sql/Sqlmysql.php:56
17Stack trace:
18#0 /usr/local/share/drush/lib/Drush/Sql/SqlBase.php(164): Drush\Sql\Sqlmysql->creds()
19#1 /usr/local/share/drush/lib/Drush/Sql/Sqlmysql.php(107): Drush\Sql\SqlBase->query('SELECT 1;', '/tmp/drush_uX7T...', '/dev/null')
20#2 /usr/local/share/drush/commands/core/site_install.drush.inc(146): Drush\Sql\Sqlmysql->db_exists()
21#3 /usr/local/share/drush/includes/command.inc(422): drush_core_pre_site_install('site-name=OpenE...')
22#4 /usr/local/share/drush/includes/command.inc(231): _drush_invoke_hooks(Array, Array)
23#5 /usr/local/share/drush/includes/command.inc(199): drush_command('site-name=OpenE...')
24#6 /usr/local/share/drush/lib/Drush/Boot/BaseBoot.php(67): drush_dispatch(Array)
25#7 /usr/local/share/drush/includes/preflight.inc(66): Drush\Boot\BaseBoot->bootstrap_and_dispatch()
26#8 /usr/local/share/drush/drush.php(12): drush_main()
27#9 {main}
28  thrown in /usr/local/share/drush/lib/Drush/Sql/Sqlmysql.php, line 56

Solution:

1sudo apt-get install php-mysql

see details in https://stackoverflow.com/questions/13375061/installing-pdo-driver-on-mysql-linux-server

Another possible solution: check and ensure the mysql credentials can access the database itself.