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 несовместимы?
Кажется, у вас есть пробел после слова "подключиться", так или иначе... попробуйте следующее:
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";
... 'user', 'password', {RaiseError=>1})
connect
; только при последующих обращениях к результирующему дескриптору базы данных (когдаconnect
выполнено).