Hola a todos, me ha surgido la siguiente duda:
Tengo dos servidores, en uno tengo montado oracle (10g) y en otro tengo mysql (3.23.49) en este ultimo tambien esta montado apache y php para visualizar la info via web.
Existe un modulo donde requiero llenar una tabla de mysql en base a una tabla de oracle, es decir, a traves de php consulto cierta informacion de oracle y cada registro devuelto lo inserto en una tabla de mysql. La cantidad de registros que se insertan es muy grande, alrededor de los 5000, lo cual hace que este proceso sea muy lento. A continuacion les pongo el ejemplo de lo que les comento:
$query_oracle = "select * from tablaoracle where existencia > 0";
$result_query = ociparse($conexionOra, $query_oracle);
$executa = ociexecute($result_query,OCI_DEFAULT);
while(OCIFetchInto($result_query,&$row,OCI_ASSOC)) {
$cmp1 = $row["CMP1"];
$cmp2 = $row["CMP2"];
$query_mysql = "insert into tablamysql values('$cmp1','$cmp2')";
$query = query_bd_mysql($DBNameMySql,$query_mysql);
}
Esto es muy lento cuando se insertan 5000 registros
Alguien sabe alguna otra forma o metodo para realizar este proceso de una manera mas optima..? Si la informacion que inserto fuera a una tabla de oracle podria usar el ocibindbyname (placeholder) para agilizar la insercion. Alguien conoce un equivalente al ocibindbyname para usarlo con mysql...?
Cualquier ayuda se los agradeceria, muchas gracias