Почему этот Perl DBI / DBD MySQL (MariaDB) не подключается к работе с locahost? - PullRequest
0 голосов
/ 06 мая 2018
use DBI;

my $dbh = DBI->connect ('DBI:mysql:host=localhost;database=test', 'user', 'password') 
   or die "failed to connect\n";

В результате выдается сообщение об ошибке:

DBI connect ('host = localhost; database = test', 'user', ...) не удалось: не удается подключиться к серверу MySQL на 'localhost' (10061) в строке connect.pl 3.

с использованием: DBI 1.641 , perl v5.26.2 на Windows 10 и под управлением MariaDB 10.2.14

mysqld работает на компьютере, и к серверу можно подключиться стандартной командой «mysql test -u user -p»

На другом ПК под управлением Windows 7 с очень похожей настройкой - но с DBI 1.636 - connect () завершается успешно с тем же кодом Perl. Возможно ли, что DBI:mysql и Windows 10 не совместимы?

1 Ответ

0 голосов
/ 07 мая 2018

Кажется, у вас есть пробел после слова "соединиться", в любом случае ... попробуйте это:

my $driver   = "mysql";
my $database = "DBname";
my $ip       = "localhost";
my $db       = "DBI:$driver:DBNAME:$ip:database=$database";
my $username = "mysqluser";
my $password = "mysqlpass";

my $cn = DBI->connect($db, $username, $password)
    or print "Couldn't connect to database: " . DBI->errstr . "\n\n";
...