Por inquieto

Por inquieto

by luis salazar -
Number of replies: 18
Buenos días moodleros!!! Resulta que tenía mi moodle funcionando al 100%, lo había instalado parte por parte en mi ubuntu con la ayuda de un amigo, pero por aquello de meter las manos donde no con el ánimo de aprender más actualicé todo el sistema desinstalé cosas puse aquí modifiqué allá y de pronto hoy me doy cuenta que doy http://localhost/moodle y me responde

Error: Database connection failed.

It is possible that the database is overloaded or otherwise not running properly.

The site administrator should also check that the database details have been correctly specified in config.php


por lo que me acuerdo cuando lo puse a funcionar tiempo a, el problema es que el php no estaba instalado pero en este momento si lo está. intenté con localhost/install.php y me da:

Not Found

The requested URL /install.php was not found on this server.


Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.1 with Suhosin-Patch Server at localhost Port 80

Mirando el directorio /var/www/moodle ahí está el config.php y también el install.php. Por lo que recuerdo el problema tiene que ver con el php.ini pero en ese mar de texto y lineas de configuración ya no me acuerdo qué era lo que tenía que modificar. Lo que si recordé es que en algún momento se me pidió si conservar el archivo de configuración y por andar haciendo mil cosas simultáneamente le debí dar que no sad

Sería tan amable alguien de ayudarme????


GRACIAS.
Average of ratings: -
In reply to luis salazar

Re: Por inquieto

by David Hernández -
Hola Luis,

1) Cuando dices "actualicé todo el sistema", ¿te refieres a que actualizaste
Ubuntu, o a que actualizaste Moodle?

2) Bueno, quizá eso no sea tan importante, si no tocaste MySQL, que es lo
que pareciera que te está fallando.

¿Tienes el motor de MySQL instalado y corriendo? (o, en su caso, PosgreSQL
u otro motor de base de datos)

3) Verifica en el archivo "config.php" de Moodle que las rutas y passwords
de la base de datos sean los correctos

4) El archivo "install.php", yo creo que sí se encuentra.

Sólo observa que si dices que tu Moodle está en: http://localhost/moodle,
ello implica que dentro de tu directorio del servidor (www),
hay una carpeta llamada "moodle", y ahí debe estar el "install.php"

Osea que tendrías que escribir: http://localhost/moodle/install.php

Si escribes http:/localhost/install.php, pues no encontrarás nada (de hecho,
eso te sale).

Si los archivos de tu Moodle estuvieran descomprimidos en "www"
directamente, entonces sí te tendría que salir algo.

Sin embargo, creo que todo es por el lado de la base de datos.

No te recomiendo instalar sobre algo que ya estaba instalado.

Saludos
In reply to David Hernández

Re: Por inquieto

by luis salazar -
Hola David, te agradezco mucho la ayuda, aquí voy con mis aclaraciones

1. Actualicé el ubuntu al 8.04 tenía el 6.06
2. Tengo postgres 8.1(según synaptic) y NO he instalado una nueva versión (aunque estuve tentado. Ya hice un pgdump.)
3. En este punto el archivo mencionado está así:
<?php /// Moodle Configuration file

unset($CFG);

$CFG->dbtype = 'postgres7';
$CFG->dbhost = 'user=\'moodle\' password="mi password" dbname=\'moodle\';
$CFG->dbpersist = false;
$CFG->prefix = 'mdl_';

$CFG->wwwroot = 'http://127.0.0.1/moodle';
$CFG->dirroot = '/var/www/moodle';
$CFG->dataroot = '/var/moodledata';
$CFG->admin = 'admin';

$CFG->directorypermissions = 00777; // try 02777 on a server in Safe Mode

$CFG->unicodedb = true; // Database is utf8

require_once("$CFG->dirroot/lib/setup.php");
// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,
// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.
?>

4. El archivo sí se encuentra pero cuando tecleé como en el mensaje anterior me dió error, ahora lo hice como sugeriste y me da el primer error: la base de datos...

Me da la impresión que el php no funciona puesto que creé una página con el tan mentado <? php_info(); ?> :
hice:
<html>
<BODY>
<? php_info();?></BODY>
</html>)

en el directorio www y nop, no me responde sad, carga la página en blanco pero sin ninguna respuesta, sin embargo le doy apt-get install php5 y me responde que está en su versión más reciente. La otra es que el apache2 no lo interprete pero no sé como mover estos archivos de configuración sad

La versión de mi moodle es 1.7.3 +

Gracias
In reply to luis salazar

Re: Por inquieto

by David Hernández -
Hola Luis,

1) Primero lo más fácil wink

El archivo phpinfo no debe incluir tags en html.

Has un archivo con terminación php, que incluya lo siguiente:

<?php phpinfo(); ?>

Así solito, y grábalo, por ejemplo como "phpinfo.php" (sin las comillas)

2) Entiendo que ahora si llamas el archivo install.php, te sale igual
el error "database connection failed" en vez del "not found"

Bien, eso es porque ahora tecleaste el URI (dirección de Internet) indicada.

Esto de momento no es importante.

3) Aquí voy prácticamente a ciegas.

Ello, porque en mi vida he usado PosgreSQL, y no tengo idea de si Moodle
genera un "config.php" distinto al de MySQL

Pero noto claras diferencias (tómalas con reserva).

Así es un "config.php" en MySQL (sólo incluyo unos campos):

$CFG->dbtype = 'mysql';
$CFG->dbhost = 'localhost';
$CFG->dbname = 'moodle';
$CFG->dbuser = 'miusuariodebasededatos';
$CFG->dbpass = 'mipassworddebasededatos';
$CFG->dbpersist = false;
$CFG->prefix = 'mdl_';

Tu pones esto:

$CFG->dbtype = 'postgres7';
$CFG->dbhost = 'user=\'moodle\' password="mi password" dbname=\'moodle\';
$CFG->dbpersist = false;
$CFG->prefix = 'mdl_';

Si estoy en lo correcto, el primer renglón está bien; en el segundo, prueba a
poner localhost o 127.0.0.1; te falta dbname, dbuser y dbpass.

Creo que debes incluirlos con los datos de tu base.

Si te das cuenta, tienes una línea así:
'user=\'moodle\' password="mi password" dbname=\'moodle\'

Parece que por cierta situación le quitaste las interlíneas. Si se las pones,
más o menos te queda lo mismo que a mi.

Lo que no sé es el por qué de las diagonales. Si para PosgreSQL sean
necesarias, o también las hayas agregado por accidente.

Has pruebas. Es probable que el asunto vaya por aquí.

Saludos

In reply to David Hernández

Re: Por inquieto

by Iñaki Arenaza -
Picture of Desarrolladores Picture of Desarrolladores de plugins Picture of Documentadores Picture of Moderadores Picture of Moodlers de gran ayuda

Lo que no sé es el por qué de las diagonales. Si para PosgreSQL sean necesarias, o también las hayas agregado por accidente.

Lo de las diagonales está bien en este caso (postgresql) smile

Saludos. Iñaki.

In reply to Iñaki Arenaza

Re: Por inquieto

by David Hernández -
Hola Iñaki,

Por este tipo de detalles (y por muchas otras cosas), es que no
debes abandonarnos tanto tiempo... sad

Vale un saludo y qué bueno que estás de nuevo por acá big grin

David
In reply to David Hernández

Re: Por inquieto

by Iñaki Arenaza -
Picture of Desarrolladores Picture of Desarrolladores de plugins Picture of Documentadores Picture of Moderadores Picture of Moodlers de gran ayuda

Lo siento, pero la vida real a veces se empeña en no dejarme tiempo para estas cosas (que hago fundamentalmente en mi tiempo libre wink.

Las 3 últimas semanas he gastado todo mi tiempo disponible (y más) en organizar una Moot regional (junto con un montón de personas más, todo hay que decirlo).

En todo caso veo que no hay problema. Entre tú y unos cuantos más os manejáis más que bien wink

Saludos. Iñaki.

In reply to David Hernández

Re: Por inquieto

by luis salazar -
Hola david, gracias por tu tiempo. Te cuento que el config que puse allí es el que tengo en el directorio moodle de mi equipo (solo puse "mi password" en cambio de mi verdadero pass wink) y hasta donde me acuerdo cuando mi moodle me funcionaba tenía la misma arquitectura (el archivo).

Veo que el php está funcionando puesto que esta es la salida que me da (recortada como en un 80%)
System Linux luisjaime-laptop 2.6.24-16-386 #1 Thu Apr 10 12:50:06 UTC 2008 i686
Build Date May 9 2008 16:14:00
Server API Apache 2.0 Handler
Virtual Directory Support disabled
Configuration File (php.ini) Path /etc/php5/apache2
Loaded Configuration File /etc/php5/apache2/php.ini
Scan this dir for additional .ini files /etc/php5/apache2/conf.d
additional .ini files parsed /etc/php5/apache2/conf.d/curl.ini, /etc/php5/apache2/conf.d/gd.ini, /etc/php5/apache2/conf.d/ldap.ini, /etc/php5/apache2/conf.d/mysql.ini, /etc/php5/apache2/conf.d/mysqli.ini, /etc/php5/apache2/conf.d/odbc.ini, /etc/php5/apache2/conf.d/pdo.ini, /etc/php5/apache2/conf.d/pdo_mysql.ini, /etc/php5/apache2/conf.d/pdo_odbc.ini, /etc/php5/apache2/conf.d/pdo_pgsql.ini, /etc/php5/apache2/conf.d/pgsql.ini
PHP API 20041225
PHP Extension 20060613
Zend Extension 220060519
Debug Build no
Thread Safety disabled
Zend Memory Manager enabled
IPv6 Support enabled
Registered PHP Streams zip, php, file, data, http, ftp, compress.bzip2, compress.zlib, https, ftps
Registered Stream Socket Transports tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
Registered Stream Filters string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*, bzip2.*, zlib.*

Por otro lado ya no sé qué hacer para que mi moodle funcione. Puesto que mi especulación inicial era que apache y moodle no estaban conectados.

Doyme cuenta además que al intentar abrir el archivo version.php del interior del directorio moodle (/var/www/moodle) sale un aviso de "¿Qué debería hacer firefox con este archivo? abrir con... guardar archivo..." lo que me confundió inicialmente puesto que asumí que eran problemas con el php y apache, situación descartada con la tabla que anexé anteriormente. Se me ocurre que, por alguna razón, necesite una modificación en los permisos pero es extraño si dichos permisos no han sido tocados (concientemente) en lo absoluto.

Salvo que haya habido una modificación de la estructura del config.php por las nuevas versiones y que esto esté generando el error no encuentro otra explicación, intentaré desmembrar la línea como me pides que lo haga a ver si da resultados. Estaré informando...
In reply to luis salazar

Re: Por inquieto

by Iñaki Arenaza -
Picture of Desarrolladores Picture of Desarrolladores de plugins Picture of Documentadores Picture of Moderadores Picture of Moodlers de gran ayuda

Actualicé el ubuntu al 8.04 tenía el 6.06

En ese caso, yo diría que la causa más probable es una actualización de la versión de Postgresql y el hecho de que puede que no te haya migrado la configuración de control de acceso de postgres.

Creo recordar que en la versión 6.06 venía postgressql 7.4.x ó 7.5.x, y en 8.04 viene una 8.x, y usan ficheros de configuración en directorios diferentes dentro de /etc/postgresql (al menos en Debian es así). Yo compararía los ficheros pg_hba.conf de ambas versiones para ver que diferencias hay entre ambos, ya que me da en la nariz que van por ahí los tiros.

Saludos. Iñaki.

In reply to Iñaki Arenaza

Re: Por inquieto

by luis salazar -
Iñaki, gracias por tu apoyo, ahora que leo tu post resulta que voy a intentar instalar la versión del 8.04 luego te cuento lo mismo que a David, gracias.
In reply to Iñaki Arenaza

Re: Por inquieto

by luis salazar -
Buenas tardes a todos, resulta que sigo con mi problema y ahora sí que estoy presionado para dejarlo funcionando, les cuento que realicé unas copias de seguridad de los cursos, desinstalé postgres 7.x e instalé postgres 8.3 bajé la última versión de moodle (1.9) e inicié la instalación y llegué hasta el segundo paso donde le doy dentro de las opciones lo siguiente:

1. tipo de base de datos: postgres 7 (no hay más opciones)
2. servidor: http://localhost
3. base de datos: moodle
4. usuario: moodle (así lo llamé)
5. contraseña: ******
6. prefijo: mdl_

Al dar click en siguiente me sale el siguiente mensaje:
PHP no ha sido adecuadamente configurado con la extensión PGSQL de modo que pueda comunicarse con PostgreSQL. Por favor, compruebe el archivo php.ini o vuelva a compilar PHP.

voy a php.ini en mi equipo está en /etc/php5, me aparecen varios directorios apache2, cgi, cli, conf.d, veo el archivo de php.ini tanto en cgi como en cli y en la sección de postgres aparece lo siguiente:

[PostgresSQL]
; Allow or prevent persistent links.
pgsql.allow_persistent = On

; Detect broken persistent links always with pg_pconnect().
; Auto reset feature requires a little overheads.
pgsql.auto_reset_persistent = Off

; Maximum number of persistent links. -1 means no limit.
pgsql.max_persistent = -1

; Maximum number of links (persistent+non persistent). -1 means no limit.
pgsql.max_links = -1

; Ignore PostgreSQL backends Notice message or not.
; Notice message logging require a little overheads.
pgsql.ignore_notice = 0

; Log PostgreSQL backends Noitce message or not.
; Unless pgsql.ignore_notice=0, module cannot log notice message.
pgsql.log_notice = 0

desde mi inexperta visión está habilitado el postgres.

Había especulado que el php y el apache estaban desconectados, situación descartada, lo que solo falta es conectar con la base de datos.

Agradezco ayuda en estos menesteres finos de configuración.


In reply to luis salazar

Re: Por inquieto

by David Hernández -
Hola Luis,

La manera más indicada para saber si la extensión de PostgreSQL está activada, es a partir de un archivo con el comando "phpinfo"
(en los posts previos ya lo habías creado).

Si todo está bien, verás algo como:

pgsql

PostgreSQL Support enabled
PostgreSQL(libpq) Version 8.2.3
Multibyte character support enabled
SSL support disabled
Active Persistent Links 0
Active Links 0

Abajo de esto, verás más cosas, que son las "Directivas". Es decir,
la manera en la que se ha configurado la extensión (es lo que pusiste en
tu mensaje).

Creo que en el archivo "php.ini" la extensión se activa quitando el
punto y coma de:
;extension=pgsql.so
Yo espero que tu problema se resuelva con esto

No obstante, según entiendo, esta es sólo una posibilidad, ya que
en los sistemas GNU/Linux como Ubuntu, tienes que saber si tu versión de PHP
fue configurada con soporte para PostgreSQL (ver referencia).

Finalmente, creo que la primera pregunta de estas FAQ, te puede servir.

Saludos

In reply to David Hernández

Re: Por inquieto

by luis salazar -
Gracias David, mira realicé en mi ubuntu lo siguiente hice:

sudo apt-get install php5-pgsql

luego probe mi archivo phpinfo y se comportó muy bien:

pgsql

PostgreSQL Support enabled
PostgreSQL(libpq) Version 8.3.1
Multibyte character support enabled
SSL support enabled
Active Persistent Links 0
Active Links 0

Directive Local Value Master Value
pgsql.allow_persistent On On
pgsql.auto_reset_persistent Off Off
pgsql.ignore_notice Off Off
pgsql.log_notice Off Off
pgsql.max_links Unlimited Unlimited
pgsql.max_persistent Unlimited Unlimited

luego de ello intento proseguir del segundo paso en que estaba y ahora me sale el siguiente mensaje:

Error de conexión con la base de datos. Por favor, compruebe los ajustes de la base de datos.


Esto qué indica: ¿que la base de datos no está bien configurada? o ¿qué?, ¿a qué ajustes se refiere?

En /etc/php5 encuentro cuatro directorios apache2, cgi, cli, conf.d si entro en cgi como en cli aparecen php.ini si entro en apache2 también. Viene la pregunta: según veo ya no es problema de total incomunicación con postgres sino "algo" que no los deja conversar libremente ¿será que tengo que modificar algo en el php.ini de alguno de estos directorios? o ¿es un problema con la base de datos creada?
In reply to luis salazar

Re: Por inquieto

by David Hernández -
Hola Luis,

Como quien dice: "Al final, el principio..." smile

Según creo este es el mismo error que dio origen a tu post....

Yo creo que se puede pensar que este es un asunto del "config.php", pero
hay que confirmarlo

Si no es esto del config, revisa bien esta documentación y estos posts.

No está demás que verifiques que tu base de datos fue creada correctamente.

Al respecto consulta esto (empieza con MySQL, pero más abajo está lo de
PostgreSQL).

Finalmente, échale un vistazo a este tutorial de Moodle y Ubuntu.

Quizá haya un paso que no has hecho.

Saludos


In reply to David Hernández

Re: Por inquieto

by luis salazar -

Gracias David:  Estoy revisando, y en parte lo que respondí a Iñaki: que la base de datos se puede ver con el pgadmin es resultado de tu sugerencia, sin embargo aún no comprendo qué cosa ha faltado y estoy leyendo con lupa cada uno de tus hipervínculos. smile

In reply to luis salazar

Re: Por inquieto

by Iñaki Arenaza -
Picture of Desarrolladores Picture of Desarrolladores de plugins Picture of Documentadores Picture of Moderadores Picture of Moodlers de gran ayuda

[...] e inicié la instalación y llegué hasta el segundo paso donde le doy dentro de las opciones lo siguiente:

  1. tipo de base de datos: postgres 7 (no hay más opciones)
  2. servidor: http://localhost

Estoooo, creo que aquí hay un error. Tienes que poner el nombre o la dirección IP del servidor de base de datos, no la dirección web del servidor. Por tanto tendrías que poner 'localhost' (sin las comillas) a secas, y no poner el 'http://'

De lo contario va a intentar conectar a un servidor cuyo nombre de DNS sea 'http://localhost' y dudo mucho que lo pueda encontrar wink

Saludos. Iñaki.

In reply to Iñaki Arenaza

Re: Por inquieto

by luis salazar -

Gracias Iñaki:  Resulta que cuando le dí solo localhost no encontraba nada: no iniciaba la instalación, debe ser porque la tengo ubicada en /var/www/moodle, cuando le di el http funcionnó y comenzó la instalación.  A estas alturas me sigue botando el error de configuración de la base de datos.

En el momento del post postgres no me abría desde pgadmin me decía que no encontraba la base de datos que revisara la configuración, he estado cacharreando y en este momento desde el pgadmin ya entro a la base de datos (vacía) de moodle, pero al parecer el instalador de moodle no la encuentra. (Dato adicional:  en el programita que me deja ver los servicios que están corriendo en el compu no sale el postgres pero me he ido por top y htop y el servicio está cargado.  Aclaro además que en la desinstalación del postgres 7.x había quedado un remanentee y era la información de que el servicio estaba cargado fuí, si no estoy mal, a /var/run y eliminé el archivo que estaba nombrado como postgres-7.x y voilá desapareció de la lista de servicios, pero no apareció el que en este momento está instalado. El lío es que borrar es muy fácil pero no sé como substituirlo para que figure en el programa de servicios. Especulo que por la razón expuesta el moodle no "ve" el servicio de postgres y por tal razón me manda este error.)

In reply to luis salazar

Re: Por inquieto

by Iñaki Arenaza -
Picture of Desarrolladores Picture of Desarrolladores de plugins Picture of Documentadores Picture of Moderadores Picture of Moodlers de gran ayuda

¿Has editado el fichero pg_hba.conf para permitir conexiones con usuario y contraseña? Si no recuerdo mal, vienen deshabilitadas por defecto.

Saludos. Iñaki

In reply to Iñaki Arenaza

Re: Por inquieto

by luis salazar -
Hola Iñaki y David, les cuento que por fín mi moodle logré instalarlo. Realicé unos cambios a saber que no sé cual fue el que surtió efecto:

  • En el pg_hba.conf tenía local all postgres md5 sameuser y puse md5 all en las dos últimas

Intenté instalar y me salió el mismo error que he comentado en los últimos post, recordé una recomendación de Iñaki y cambié el http://localhost por localhost y voilá!!!!!

De toda esta experiencia me queda una gran frustración y es que moví tantas cosas que no logré crear un hilo mental al respecto, sin embargo, volvería a realizar la experiencia desde cero y lo voy a intentar tan pronto como salga de realizar unas evaluaciones.

Gracias