GoDaddy: Como adicionar um banco de dados a um domínio addon
Tenho uma conta principal em goddady eg. a.com
e adicionei um domínio adicional eg b.com
criei uma base de dados db_a, trabalhando com a.com correctamente.
criei uma base de dados DB_ B, e estou a tentar trabalhar com b.com, onde posso configurá-lo para que o db_b seja acessível por b.com como host=localhost?
0
1 answers
Depois de um grande tempo de confusão e depuração, e eu descobri a razão / solução. Mas ainda não sei por que Godaddy DOP tem este problema.
PHP v5.4.45
<?php
$pdo = new PDO('mysql:localhost;dbname=mydb', $user, $pass);
$sth = $pdo->prepare('select * from tab limit 1');
$sth->execute();
$row = $sth->fetchAll();
echo '<pre>select * from test -- not working -- ';
print_r($row);
$sth = $pdo->prepare('select now()');
$sth->execute();
$row = $sth->fetchAll(PDO::FETCH_ASSOC);
echo "\nselect now -- working -- ";
print_r($row);
$sth = $pdo->prepare('show databases');
$sth->execute();
$row = $sth->fetchAll(PDO::FETCH_ASSOC);
echo "\nshow databases -- working -- ";
print_r($row);
$sth = $pdo->prepare('show tables');
$sth->execute();
$row = $sth->fetchAll(PDO::FETCH_ASSOC);
echo "\nshow tables -- not working -- ";
print_r($row);
$sth = $pdo->prepare('show privileges');
$sth->execute();
$row = $sth->fetchAll(PDO::FETCH_ASSOC);
echo "\nshow privileges -- working but not right -- ";
print_r($row);
$sth = $pdo->prepare('select * from information_schema.TABLES where TABLE_SCHEMA != \'information_schema\'');
$sth->execute();
$row = $sth->fetchAll(PDO::FETCH_ASSOC);
echo "\nselect * from information_schema.TABLES -- working -- ";
print_r($row);
Nenhum erro -- que confuso. E eu testo isto, funciona:
<?php
$pdo = new PDO('mysql:localhost;dbname=mydb', $user, $pass);
$sth = $pdo->prepare('select * from mydb.tab limit 1');
$sth->execute();
$row = $sth->fetchAll();
echo '<pre>select * from test -- working !!! -- ';
print_r($row);
E agora tenho esta solução, mas não tenho a certeza se é o bug DOP Godaddy?
<?php
$pdo = new PDO('mysql:localhost', $user, $pass);
$sth = $pdo->prepare('use mydb');
$sth->execute();
$sth = $pdo->prepare('select * from tab limit 1');
$sth->execute();
$row = $sth->fetchAll();
echo '<pre>select * from test -- working !!! -- ';
print_r($row);
Conclusão:
Parece que o Godaddy DOP não usa o dbname, é preciso correr manualmente 'use o dbname ' depois Nova DOP e antes de quaisquer outros SQLs
0
Author: SIDU, 2017-04-07 10:29:24