Error en la Base de Datos - Por favor intenta nuevamente. Si esta pantalla aparece nuevamente, notifica del error a un administrador¿Ha tenido este error antes?
Si usted tiene un vps, o un servidor dedicado, entonces acá dejo una solución bastante sencilla y eficiente para solventar este problema. Saludos.
Hoy un amigo que tiene un foro SMF experimentó este problema de la noche a la mañana.Investigando un poco, el error ya es algo común entre muchos usuarios. En esta sección veremos algunos detalles que nos pueden ayudar a identificar la solución para este error.
Las causas más conocidas, provienen en su mayoría desde la base de datos. Es decir, no tiene nada que ver con SMF a nivel de aplicación (archivos php). ¿Cómo puedo pasar esto? Bueno, veamos algunos escenarios:
Los datos son eliminados incorrectamente: Cuando se elimina un registro de la base de datos, otras tablas pueden contener aún referencias a este. Por lo tanto, tratar de accesar a dicha información da un error de resultado de datos, y lanza el error mencionado.
Tabla inexistente: Al igual que el escenario anterior, con la tabla pasa algo parecido. Una tabla aún tiene referencia a otra tabla que ya no existe.
Tablas no depuradas o corruptas: A veces los datos de una tabla están incompletos, o bien, inválidos. Una razón que puede provocar esto es porque la partición donde el servidor de MySQl está instaldo se ha llenado.
Al menos para el primero y último escenario, tenemos una manera de solucionar el problema desde una consola de linux de comandos (también sirve para windows). Usando la función mysqlcheck de Mysql. Primero, revisemos el archivo Settings.php de SMF, y veremos datos como estos:
$db_type = 'mysql';
$db_server = 'localhost';
$db_name = 'mi_db';
$db_user = 'usuario_db_smf';
$db_passwd = 'mi_pass';
Usando la consola de comandos de nuestro servidor, o bien, mediante un cliente ssh hacemos:
mysqlcheck -u usuario_db_smf -p --auto-repair --check --optimize --all-databases
Nótese que se está usando el nombre de usuario de la base de datos que administra la misma del foro SMF.
Ahora, les va a pedir que ingresen la contraseña:
Enter password:
Una vez que la escriban correctamente, verán algo asi:
mi_db.smf_admin_info_files OK
mi_db.smf_ads Table is already up to date
mi_db.smf_ads_settings Table is already up to date
mi_db.smf_approval_queue OK
mi_db.smf_attachments OK
mi_db.smf_ban_groups Table is already up to date
mi_db.smf_ban_items Table is already up to date
mi_db.smf_board_permissions Table is already up to date
mi_db.smf_boards OK
mi_db.smf_bookmarks Table is already up to date
mi_db.smf_broken_links_list Table is already up to date
mi_db.smf_buddies Table is already up to date
mi_db.smf_calendar Table is already up to date
mi_db.smf_calendar_holidays Table is already up to date
mi_db.smf_categories Table is already up to date
mi_db.smf_collapsed_categories Table is already up to date
mi_db.smf_custom_fields Table is already up to date
mi_db.smf_group_moderators Table is already up to date
mi_db.smf_log_actions OK
mi_db.smf_log_activity OK
mi_db.smf_log_banned Table is already up to date
mi_db.smf_log_boards OK
mi_db.smf_log_comments Table is already up to date
mi_db.smf_log_digest OK
mi_db.smf_log_errors
error : Found key at page 1562624 that points to record outside datafile
status : Operation failed
mi_db.smf_log_floodcontrol OK
mi_db.smf_log_group_requests Table is already up to date
mi_db.smf_log_karma Table is already up to date
mi_db.smf_log_mark_read OK
mi_db.smf_log_member_notices Table is already up to date
mi_db.smf_log_notify OK
mi_db.smf_log_online
warning : Number of rows changed from 5 to 4
status : OK
mi_db.smf_log_packages Table is already up to date
mi_db.smf_log_polls Table is already up to date
mi_db.smf_log_reported Table is already up to date
mi_db.smf_log_reported_comments Table is already up to date
mi_db.smf_log_scheduled_tasks OK
mi_db.smf_log_search_messages Table is already up to date
mi_db.smf_log_search_results OK
mi_db.smf_log_search_subjects OK
mi_db.smf_log_search_topics Table is already up to date
mi_db.smf_log_spider_hits Table is already up to date
mi_db.smf_log_spider_stats OK
mi_db.smf_log_subscribed Table is already up to date
mi_db.smf_log_topics OK
mi_db.smf_mail_queue Table is already up to date
mi_db.smf_membergroups Table is already up to date
mi_db.smf_members OK
mi_db.smf_message_icons Table is already up to date
mi_db.smf_messages OK
mi_db.smf_moderators Table is already up to date
mi_db.smf_openid_assoc Table is already up to date
mi_db.smf_package_servers Table is already up to date
mi_db.smf_permission_profiles Table is already up to date
mi_db.smf_permissions OK
mi_db.smf_personal_messages OK
mi_db.smf_picture_comments Table is already up to date
mi_db.smf_pm_recipients OK
mi_db.smf_pm_rules Table is already up to date
mi_db.smf_poll_choices Table is already up to date
mi_db.smf_polls Table is already up to date
mi_db.smf_pretty_topic_urls OK
mi_db.smf_pretty_urls_cache Table is already up to date
mi_db.smf_profile_albums Table is already up to date
mi_db.smf_profile_comments Table is already up to date
mi_db.smf_profile_pictures Table is already up to date
mi_db.smf_related_subjects OK
mi_db.smf_related_topics OK
mi_db.smf_scheduled_tasks OK
mi_db.smf_sessions OK
mi_db.smf_settings OK
mi_db.smf_smileys Table is already up to date
mi_db.smf_spiders Table is already up to date
mi_db.smf_ssrs_good_post OK
mi_db.smf_ssrs_likes Table is already up to date
mi_db.smf_subscriptions Table is already up to date
mi_db.smf_themes OK
mi_db.smf_topics OK
Repairing tables
mi_db.smf_log_errors
info : Wrong bytesec: 0- 0- 0 at 48825404; Skipped
En cada tabla que vean el mensaje de OK significa que la tabla fue reparada ya que existía alguna anomalía. Por otro lado, Table is already up to date significa que la tabla se ha encontrado en óptimas condiciones.
Fuente:
http://delibertad.com/smf2/error-en-la-base-de-datos-por-favor-intenta-nuevamente.-si-esta-pantalla-aparece-nuevamente-notifica-del-error-a-un-administrador