• Publicidad

SELECT para aquí, SELECT para allá...

Todo acerca de las bases de datos que existen: SQL, MySQL, Oracle, Postgres, CSV, etc.

SELECT para aquí, SELECT para allá...

Notapor mjimenez » 2009-02-12 22:52 @994

Hola chicos, cargo de nuevo con un nuevo problemilla:

Éste es el siguiente, dispongo de una base de datos en Mysql, bastante "pesadita" (un par de gigas)... aun no he logrado insertarla en un Mysql puesto que no me permite hacerlo las limitaciones de tiempo de ejecución de PHP y tampoco las impuestas por el max_file_size_upload en el propio httpd.conf de Apache... por lo que cualquier intento con phpmyadmin se trunca...

He probado con bigdump.php pero tampoco permite subir el fichero, puesto que está en formato especial phpmysql que es del tipo:

Sintáxis: [ Descargar ] [ Ocultar ]
Using sql Syntax Highlighting
-- phpMyAdmin SQL Dump
-- version 2.6.4-pl2
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Jul 06, 2006 at 09:40 AM
-- Server version: 4.0.27
-- PHP Version: 4.3.11
--
-- Database: `articlesdb`
--

-- --------------------------------------------------------

--
-- Table structure for table `article_db`
--

CREATE TABLE `article_db` (
  `article_id` bigint(20) NOT NULL AUTO_INCREMENT,
  `article_user_id` int(11) NOT NULL DEFAULT '0',
  `article_author` varchar(100) NOT NULL DEFAULT '',
  `article_snippet` varchar(255) NOT NULL DEFAULT '',
  `article_summary` text NOT NULL,
  `article_title` varchar(100) NOT NULL DEFAULT '',
  `article_category_id` int(11) NOT NULL DEFAULT '0',
  `article_views` bigint(20) NOT NULL DEFAULT '0',
  `article_status` int(11) NOT NULL DEFAULT '1',
  `article_date` date NOT NULL DEFAULT '0000-00-00',
  `article_home_page` int(11) NOT NULL DEFAULT '0',
  `article_email` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY  (`article_id`)
) TYPE=MyISAM AUTO_INCREMENT=283404 ;

--
-- Dumping data for table `article_db`
--

INSERT INTO `articles` VALUES (1, 0, 'Autor Uno', ' Quiero mi ipod'.....)
....
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4


Y la versión de bigdump es totalmente distinta...

Sí, he probado con mysqldump blah blah < mibugdumpfile.sql pero nada, no resultados...

¿Alguna idea o conversor disponible?

¡¡Gracias!!

mysqldump saca los datos así:

Sintáxis: [ Descargar ] [ Ocultar ]
Using sql Syntax Highlighting
-- MySQL dump 10.11
--
-- Host: localhost    Database: artdir
-- ------------------------------------------------------
-- Server version       5.0.67-community

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0
*/
;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `articlepages`
--

DROP TABLE IF EXISTS `al_articlepages`;
SET @saved_cs_client     = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `al_articlepages` (
  `PageID` int(11) NOT NULL AUTO_INCREMENT,
  `ArticleID` int(11) DEFAULT '0',
  `SortOrderID` int(11) DEFAULT '0',
  `Title` varchar(100) NOT NULL DEFAULT '',
  `Content` text,
  `MetaKeywords` text NOT NULL,
  `MetaDesc` text NOT NULL,
  PRIMARY KEY  (`PageID`),
...
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4



Rastreando la red, no he encontrado ninguna herramienta que lo hiciese... ¿alguna idea?

Gracias


Lo suyo sería poder pasar las tablas que correspondiesen de un formato a otro, mi base de datos articledir, dispone de más parámetros, pero son distintos en nombre, mientras en uno es article_id en otro es ArticleID, mientras que en uno es article_user_id en otro es AuthorID...

¿Me recomendáis que haga un sed s/nombre_tabla_a_cambiar/nuevo_nombre/g de todo el contenido inicial? ¡¡¡Puede tardarme una eternidad pues el fichero ocupa 2 gigas!!! y puede truncarse en algún momento...

¿Y luego hacer un append de nuevo a esos 2 gigas, añadiéndole las tablas contiguas + valores NULL al resto de tablas?

¿Cómo podría hacer esto?

¡¡Gracias!!
mjimenez
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2008-12-12 10:01 @459

Publicidad

Notapor mjimenez » 2009-02-19 10:42 @487

Me respondo yo solito, las tablas las he tenido que importar modificando de la BBDD2 algunas filas para que al hacer el import (no automático, sino por partes y a pelo a través del mysql) coincidiesen y las importase bien.

Ahora ya tengo una base de datos INMENSA, solo faltaría eliminar aquellos registros que estén repetidos o sean parecidos... aunque creo que con varias select where %row LIKE me ayudarán.
mjimenez
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2008-12-12 10:01 @459

Re: SELECT para aquí, SELECT para alla...

Notapor kidd » 2009-02-19 21:31 @938

mjimenez escribiste:Sí, he probado con mysqldump blah blah < mibugdumpfile.sql pero nada, no resultados...


Y sería raro que hubiera funcionado pues el mysqldump solamente es para crear los dumps, no importarlos :P

Si lo que querías era importar un archivo .sql previamente creado con el phpMyAdmin o el mysqldump, entonces la sintaxis sería:

Código: Seleccionar todo
mysql -p -u USERNAME BASE_DE_DATOS < ARCHIVO.sql


En caso de fallar, normalmente hace un ouput del error encontrado.

Saludos
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México


Volver a Bases de datos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados