title: eval not printing "Hello World" and still outputs to stderr
body: <p>I would like Perl or DBI to not send error exceptions when there is an error connecting to a database. My objective is once I cannot connect to the database either by username/password or URL issues, to send code to my monitoring server.</p>
  
  <pre><code>#!/usr/bin/perl -w
  use strict;
  
  use DBI;
  use Data::Dumper;
  
  my $dsn = 'DBI:ODBC:Driver={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.5.so.2.1}';
  my $host = 'whatever.com,1433';
  my $database = 'xxxxx';
  my $user = 'xxxxx';
  my $auth = 'xxxxxxx';
  
  eval {
  my $dbh = DBI-&gt;connect("$dsn;Server=$host;Database=$database",
  $user,
  $auth);
  };
  
  
  if ($@) {
    print "Hello World.\n";
    ## Eventually, I'll put code here to send alerts to the monitoring server
  }
  </code></pre>
  
  <p>Even using eval, Perl/DBI still outputs the error and it doesn't print "Hello World".</p>
  
  <pre><code>DBI connect('Driver={/opt/microsoft/msodbcsql17/lib64/libmsodbcsql- 
  17.5.so.2.1};Server=xxxxx- 
  xxxxxxx.com,1433;Database=xxxxxx','xxxxuser1',...) failed: [Microsoft][ODBC Driver 
  17 for SQL Server][SQL Server]Login failed for user 'xxxxuser1'. (SQL-28000) at ./x.pl 
  line 14.
  </code></pre>