I've configured my psql DB on Digitalocean server to accept remote connections. Local script
psql -h addres-to-droplet -U Digitalocean -d Digitalocean_production
works like a charm (I have prompt to pass my password). When I use php script with Redbean I have PDO error like this:
Fatal error: Uncaught exception 'PDOException' with message 'Could not connect to database (Digitalocean_production).' in /usr/share/nginx/html/rb.php:830 Stack trace: #0 /usr/share/nginx/html/rb.php(657): RedBeanPHP\Driver\RPDO->connect() #1 /usr/share/nginx/html/rb.php(854): RedBeanPHP\Driver\RPDO->runQuery('SELECT * FROM u...', Array) #2 /usr/share/nginx/html/rb.php(3306): RedBeanPHP\Driver\RPDO->GetAll('SELECT * FROM u...', Array) #3 /usr/share/nginx/html/rb.php(10060): RedBeanPHP\Adapter\DBAdapter->get('SELECT * FROM u...', Array) #4 /usr/share/nginx/html/rb.php(10751): RedBeanPHP\Facade::query('get', 'SELECT * FROM u...', Array) #5 /usr/share/nginx/html/test.php(10): RedBeanPHP\Facade::getAll('SELECT * FROM u...') #6 {main} thrown in /usr/share/nginx/html/rb.php on line 830
My R::setup looks like this
R::setup( 'pgsql:host=address-to-droplet;dbname=Digitalocean_production', 'Digitalocean', 'Digitalocean');
R::getAll( 'SELECT * FROM users'); --that sql works with psql
Try to create PDO instance and then pass it to redbean setup function
$db = new PDO('pgsql:dbname=mydb;host=localhost;user=myuser;password=mypass');
R::setup($db);