ERRO: não foi possível encontrar o driver depois de mudar de mysql para mariadb

1

O mysql estava funcionando bem, mas eu queria testar o mariadb em um novo servidor. No entanto estou tendo um problema onde todos os meus sites php parecem ter problemas de comunicação com mariadb. O Webmin funciona para mim, mas recebo este aviso para o mysql.

Warning: The Perl module DBD::mysql is not installed on your system, so Webmin will not be able to reliably access your MySQL database. Click here to install it now.

Uma solução possível que eu continuo encontrando é tentar instalar o php-mysql, mas recebo o seguinte erro

~]# yum install php-mysql
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: ftp.sunet.se
 * extras: ftp.sunet.se
 * updates: ftp.sunet.se
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-mysql.x86_64 0:5.3.3-23.el6_4 will be installed
--> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: php-mysql-5.3.3-23.el6_4.x86_64
Package mysql-libs-5.1.69-1.el6_4.x86_64 is obsoleted by MariaDB-shared-5.5.33a-1.i686 which is already installed
--> Processing Dependency: libmysqlclient.so.16()(64bit) for package: php-mysql-5.3.3-23.el6_4.x86_64
Package mysql-libs-5.1.69-1.el6_4.x86_64 is obsoleted by MariaDB-shared-5.5.33a-1.i686 which is already installed
--> Finished Dependency Resolution
Error: Package: php-mysql-5.3.3-23.el6_4.x86_64 (updates)
           Requires: libmysqlclient.so.16(libmysqlclient_16)(64bit)
           Available: mysql-libs-5.1.66-2.el6_3.x86_64 (base)
               libmysqlclient.so.16(libmysqlclient_16)(64bit)
           Available: mysql-libs-5.1.67-1.el6_3.x86_64 (updates)
               libmysqlclient.so.16(libmysqlclient_16)(64bit)
           Available: mysql-libs-5.1.69-1.el6_4.x86_64 (updates)
               libmysqlclient.so.16(libmysqlclient_16)(64bit)
Error: Package: php-mysql-5.3.3-23.el6_4.x86_64 (updates)
           Requires: libmysqlclient.so.16()(64bit)
           Available: mysql-libs-5.1.66-2.el6_3.x86_64 (base)
               libmysqlclient.so.16()(64bit)
           Available: mysql-libs-5.1.67-1.el6_3.x86_64 (updates)
               libmysqlclient.so.16()(64bit)
           Available: mysql-libs-5.1.69-1.el6_4.x86_64 (updates)
               libmysqlclient.so.16()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Aqui está o erro completo para o meu script php que funciona com o mysql mas não com o mariadb

ERROR: could not find driver Notice: Undefined offset: 0 in /var/www/html/index.php on line 137 Fatal error: Call to a member function prepare() on a non-object in /var/www/html/classes/DB.class.php on line 75

5.5.33a-MariaDB Servidor MariaDB Centos 6.4 Eu posso logar no mysql no terminal onde ele mostra a versão do mariadb, eu também posso ver e gerenciar tabelas no webmin mas nenhum dos meus scripts php funcionam, incluindo o wordpress.

    
por Markus Tenghamn 28.09.2013 / 22:56

1 resposta

1

Veja esta dica no MariaDB Knowledgebase. O título do artigo, Como posso atualizar do MySQL para MariaDB? .

Também é abordado aqui neste artigo, intitulado: Instale o servidor LEMP (Nginx com MariaDB e PHP) no CentOS 6 .

A conclusão é que você precisa usar o repositório de terceiros, o REMI para resolver essas dependências.

$ rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

Siga as instruções no artigo do LEMP para detalhes sobre como migrar do MySQL para o MariaDB!

    
por 29.09.2013 / 01:00