Bueno, yo en la materia no soy tan experimentado tampoco, pero intentare ayudar, yo he hecho algo parecido a lo que quieres, pero no con una variable, sino que hago una clase, que este caso en la funcion __construct implementaria los metodos para conectar a la base de datos y al final crear un objeto de dicha clase que podras utilizar en cualquier punto, porque, no se si este bien, si lo asignas asi a una variable, tendras que declararla variable global para que funcione, y poner el register_globals=on no es reconmendable. Seria algo asi:
Código PHP:
class BD{
var $_bd;
function __construct(){
$this->_bd = mysql_connect('host', 'user', 'pass');
$this->_bd = mysql_select_db('db', $this->_db);
}
}
$database = new BD();
Ahora cuando quieras usar la base de datos harias algo como $database->_bd->(metodo a implementar). Perdon si no te aseguro que lo que hice funciona, repito, no estoy muy experimentado, y no me dio tiempo de probar el codigo.
Ahora, yo tambien uso el Zend_Registry para el caso de la conexion persistente a base de datos, no se si me explico bien, cualquier duda o si de plano no salio, por aqui seguire
Saludos.