use DBI; sub usage { my ( $script ) = $0 =~ m,([^\/]+)$,; print <<"MeMeMe"; ------------------------------------------------------------ USAGE: $script [DB] [new_user] [new_user_pswd] This is how this must be used. You didn't do it right! ------------------------------------------------------------ MeMeMe exit 0; } my $server = 'localhost'; my $db = 'mysql'; my $connect_file = '/Users/jinx/.my.users.cnf'; #my $connect_file = '/whatever/.my_user_master.cnf'; my $new_user_db = shift || usage(); my $new_user = shift || usage(); my $new_user_pw = shift || usage(); $new_user_db =~ /^\w+$/ or die "DB name is innappropriate!"; my $dbh = DBI->connect("dbi:mysql:database=$db:host=$server;" . "mysql_read_default_file=$connect_file;", undef, undef, {}, ); my $grant_local = $dbh->prepare(<execute($new_user, $new_user_pw); $sth->finish(); } $dbh->disconnect(); exit 0;