Instalar entorno LAMP (Apache, MySQL, PHP) en Ubuntu

Si eres Desarrollador Web, es necesario contar con un entorno LAMP local para nuestros proyectos.

Instalar Apache, MySQL y PHP en Ubuntu es algo muy sencillo, trivial para muchos, pero desconocido por algunos. Aquí las instrucciones.

Usando la Terminal

Para mi, la forma más sencilla:

$ sudo apt-get install lamp-server^

Y si, es muy importante el símbolo “^” al final, pegado a “lamp-server“, ya que le indica a apt-get que realmente se instalará un meta paquete, o sea, una tarea (task) que incluye varios paquetes.

Usando la interfaz gráfica

Si estás usando Ubuntu 10.10, malas noticias, a los chicos de Canonical se les olvidó incluir la opción “Marcar Paquetes por Tarea” en Synaptic (bug documentado).

Si usas alguna versión de Ubuntu previa a la 10.10, ve al menú principal Sistema » Administración » Gestor de paquetes Synaptic, y al abrirse la ventana, selecciona en su menú Editar » Marcar Paquetes por Tarea. Asomará el siguiente cuadro de diálogo:

Ubuntu LAMP

Sólo hay que seleccionar LAMP Server y dar click en el botón Aceptar.

Notas Finales

Durante el proceso de instalación (en cualquiera de las dos formas mencionadas anteriormente), se te solicitará ingreses (y confirmes) la contraseña para el usuario root de MySQL. Todo lo demás es automático.

Yo prefiero usar la terminal, ¿y tú qué método de instalación elegiste?

Share

MySQL Workbench 5.2.30 Disponible

Hace unos momentos fue liberada una aplicación favorita entre Administradores de Bases de Datos y Desarrolladores Web: MySQL Workbench 5.2.30. Es una versión estable que se enfoca en la mejora en su desempeño y usabilidad desde su versión anterior.

MySQL Workbench 5.2.30

Como nueva característica, agrega un conjunto de plugins para el formateo y estructuración de texto (queries) para el editor SQL (en el menú encontrarán dichos plugins es Edit » Format).

Nuevos Plugins de Formateo de Queries

Para quienes aún no lo conozcan, MySQL Workbench incluye:

  • Modelado de Bases de Datos.
  • Consultas SQL (reemplaza a MySQL Query Browser).
  • Administración del Servidor (reemplaza a MySQL Administrator).

Si eres desarrollador web y MySQL es el RDBMS de tu preferencia, te sugerimos descargar MySQL Workbench 5.2.30; están disponibles los instaladores binarios para Windows, MacOS X y Linux (Ubuntu, Fedora, SuSE, RedHat).

En el caso particular de ArchLinux, instalar MySQL Workbench 5.2.30 es sumamente sencillo:

$ sudo pacman -Sy mysql-workbench

La comunidad de ArchLinux no deja de sorprenderme, pues con apenas un par de horas de haber sido liberado MySQL Workbench 5.2.30, ya se encuentra disponible en el repositorio [community], ¡eso es velocidad!

Share

MySQL Workbench 5.2.29 Disponible

Hace apenas unas horas fué liberada una aplicación favorita entre Administradores de Bases de Datos y Desarrolladores Web: MySQL Workbench 5.2.29. Es una versión estable que se enfoca en la mejora en su desempeño y usabilidad desde su versión anterior.

MySQL Workbench 5.2

Como nueva característica, incluye el guardado automático en los modelos gráficos, el cual tiene por defecto cada 5 minutos, tiempo que puede ser modificado fácilmente en las opciones de configuración de la aplicación.

Para quienes aún no lo conozcan, MySQL Workbench incluye:

  • Modelado de Bases de Datos.
  • Consultas SQL (reemplaza a MySQL Query Browser).
  • Administración del Servidor (reemplaza a MySQL Administrator).

Si eres desarrollador web y MySQL es el RDBMS de tu preferencia, te sugerimos descargar MySQL Workbench 5.2.29; están disponibles los instaladores binarios para Windows, MacOS X y Linux (Ubuntu, Fedora, SuSE, RedHat).

Fuente: The MySQL Workbench Team Blog.

Share

Respaldar y Restaurar Bases de Datos MySQL

Es increíble como a veces nos complicamos la vida con soluciones problemáticas, cuando lo más sencillo está a nuestro alcance. Un ejemplo de ello es la tarea de respaldar (backup) y restaurar (restore) bases de datos de MySQL: muchos buscan e instalan utilerías para hacerlo, o se valen de aplicaciones de terceros, o de algún script en PHP, etc.

¿Tienes el servidor MySQL instalado? ¡Bien! ¡No necesitas nada extra!

Los comandos básicos

En los siguientes ejemplos, el modificador -u especifica el nombre de usuario de MySQL, y el modificador -p indica que debe solicitarse la contraseña de dicho usuario al momento de ejecutar el comando.

Respaldar una base de datos:

mysqldump -u usuario -p base_datos > respaldo.sql

Restaurar una base de datos (la base de datos debe existir):

mysql -u usuario -p base_datos < respaldo.sql

Comandos especializados

Respaldar tablas específicas de una base de datos:

mysqldump -u usuario -p base_datos tabla1 tabla2 > respaldo.sql

Respaldar varias bases de datos al mismo tiempo:

mysqldump -u usuario -p --databases base1 base2 base3 > respaldo.sql

Respaldar todas las bases de datos

mysqldump -u usuario -p --all-databases > respaldo.sql

Respaldar sólo la estructura de una base da datos:

mysqldump -u usuario -p --no-data base_datos > estructura.sql

Usando compresión

Compresión al Respaldar:

mysqldump -u usuario -p base_datos | gzip > respaldo.sql.gz

Descompresión al Restaurar:

gunzip < respaldo.sql.gz | mysql -u usuario -p base_datos

Sencillo, ¿verdad? Fácil de usar, de implementar… ¡e incluso de recordar!

Share

Mostrar como Tabla HTML los detalles de los campos de las tablas de una base de datos MySQL con PHP

Creo que es el título más largo que he usado en un post… “Mostrar como Tabla HTML los detalles de los campos de las tablas de una base de datos MySQL con PHP“… no encontré una mejor forma de resumirlo.

Hace poco tuve la necesidad de mostrar como tablas HTML los detalles de los campos (sus nombres, tipos, llaves, valores por defecto, etc) de las tablas de una base de datos MySQL en particular, utilizando PHP. Tomando la idea de David, la modifiqué y traduje según mis requerimientos (intentando dejar el script lo más general posible), y el resultado fué el siguiente código.

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8" />
<title>Detalles de las Tablas de una Base da Datos</title>
 
<style type="text/css">
body			{ font-family: Arial, Verdana, Sans; font-size: 14px; }
table.tabla-bd		{ border-right:1px solid #ccc; border-bottom:1px solid #ccc; }
table.tabla-bd th	{ background:#eee; padding:5px; border-left:1px solid #ccc; border-top:1px solid #ccc; }
table.tabla-bd td	{ padding:5px; border-left:1px solid #ccc; border-top:1px solid #ccc; }
</style>
 
</head>
<body>
 
<?php
# Datos de Conexión a la Base de datos
# (Hay que ajustarlos a tus necesidades particulares)
$servidor  = 'miservidor';
$usuario   = 'miusuario';
$password  = 'miclave';
$basedatos = 'mibasededatos';
 
# Establecer la conexión a la Base de Datos
$conexion = mysql_connect($servidor,$usuario,$password);
mysql_select_db($basedatos,$conexion);
 
# Consulta SQL que devuelve los nombres de las tablas de la Base de Datos
$tablas = mysql_query('SHOW TABLES',$conexion) or die('Imposible mostrar tablas');
 
 
while($tabla = mysql_fetch_row($tablas)) {
 
	$nombreTabla = $tabla[0];
	echo '<h3>Tabla: ',$nombreTabla,'</h3>';
 
	# Consulta SQL que devuelve los campos de cada tabla
	$campos = mysql_query('SHOW COLUMNS FROM '.$nombreTabla) or die('Imposible mostrar campos de '.$nombreTabla);
 
	# Muestra como tabla HTML los detalles de los campos de la tabla correspondiente
	if(mysql_num_rows($campos)) {
		echo '<table class="tabla-bd" cellpadding="0" cellspacing="0"><thead><tr><th>Campo</th><th>Tipo</th><th>Nulo</th><th>Llave</th><th>Defecto</th><th>Extra</th></tr></thead><tbody>';
		while($detalles = mysql_fetch_row($campos)) {
			echo '<tr>';
			foreach($detalles as $detalle=>$valor) {
				echo '<td>',$valor,'</td>';
			}
			echo '</tr>';
		}
		echo '</tbody></table><br />';
	}
}
 
#Cerrar la conexión a la Base de Datos
mysql_close($conexion);
?>
 
</body>
</html>

¿Simple no? También podrías reutilizar el código anterior, por ejemplo: Si tienes una clase que encapsule el manejo de tus bases de datos, podrías usar el script anterior como método, y así invocarlo con un simple $basedatos->mostrarTablas(); … bueno, es sólo una idea.

Share

MySQL Workbench 5.2 Final Liberado

Muchos desarrolladores esperaban este día, ¡la versión final de MySQL Workbench 5.2 ha sido liberada! El número de versión exacto de esta liberación es 5.2.25, y al ser una versión estable, se le conoce como GA (Generally Available).

MySQL Workbench 5.2

MySQL Workbench 5.2 incluye:

  • Modelado de Bases de Datos.
  • Consultas SQL (reemplaza a MySQL Query Browser).
  • Administración del Servidor (reemplaza a MySQL Administrator).

Si eres desarrollador web y MySQL es el RDBMS de tu preferencia, te sugerimos descargar MySQL Workbench 5.2; están disponibles los instaladores binarios para Windows, MacOS X y Linux (Ubuntu, Fedora, SuSE, RedHat).

Fuente: The MySQL Workbench Team Blog.

Share

Comparativa de Versiones LAMP entre CentOS, Debian y Ubuntu Server

Probando diferentes distribuciones de Linux para montar un Servidor para Producción, me dió curiosidad conocer qué versiones de Kernel, Apache, MySQL y PHP son las que traen por defecto las últimas versiones de CentOS, Debian y Ubuntu Server.

¿Por qué esas distros? Luego de investigar un poco, son de las tres más recomendadas dentro de las gratuitas (por eso no estoy tomando en cuenta a Red Hat Enterprise Linux 5 y SUSE Linux Enterprise 11).

¿Qué versiones comparé? CentOS 5.5, Debian 5.0 y Ubuntu Server 10.04 (las últimas versiones disponibles al día de hoy, 28 de Mayo de 2010).

Luego de instalar desde cero cada distro, usando sólo paquetes estables recomendados de cada una, aquí el resultado obtenido:

  CentOS 5.5 Debian 5.0 Ubuntu 10.04 G.A.
Kernel 2.6.18 2.6.26 2.6.32 2.6.33
Apache 2.2.3 2.2.9 2.2.14 2.2.15
MySQL 5.0.77 5.0.51 5.1.41 5.1.47
PHP 5.1.6 5.2.6 5.3.2 5.3.2

En la última columna podemos observar la versión “Generally Available“, en otras palabras, la última versión oficial estable de cada paquete.

Es obvio que el número de versión de cada paquete no es un factor determinante para elegir entre una distribución u otra, pero dependiendo de nuestras necesidades específicas, si nos puede orientar para tomar una mejor decisión.

Y por si te lo estás preguntando, en mi caso muy particular, elegí Debian 5.0 para montar mi servidor de producción.

¿Cuál es tu distro favorita para servidores?

Share

MySQL Workbench 5.2 RC Liberado

MySQL Workbench LogoMySQL Workbench 5.2 ha llegado a su fase Release Candidate (RC), lo que significa que es prácticamente la versión definitiva.

Los invitamos a conocer MySQL Workbench a través de nuestros artículos previos sobre el tema.

¡Descarga MySQL Workbench 5.2 RC! Se encuentra disponible para Linux (Ubuntu, Fedora, SuSE, RedHat), Windows y Mac OS X.

Fuente: The MySQL Workbench Team Blog.

Share

Instalar y Configurar PHP y MySQL en Cherokee Web Server

Cherokee Logo¿Ya instalaron Cherokee Web Server? Entonces seguro deseas que funcione con PHP y MySQL… ¡es muy sencillo! Sólo hay que seguir los pasos siguientes para Ubuntu.

  1. Si aún no lo haces, instala Cherokee Web Server.
  2. Si ya tienes instalado Apache, hay que eliminarlo para evitar conflictos.
  3. sudo update-rc.d -f apache remove

  4. Instala MySQL y PHP (si aún no los tienes instalados) usando el comando
  5. sudo apt-get install mysql-server mysql-client php5-cgi php5-mysql

  6. Por último, en el panel de administración de Cherokee, debemor entrar a la opción vServers, y ahí seleccionar el servidor default, y a la derecha seleccionar la ficha Comportamiento, y ahí dar click al botón Manejo de Reglas. Entonces, damos click al botón con el símbolo “+” para agregar una nueva regla, donde aparecerá una “ventana” donde debemos seleccionar la opción Lenguajes, y ahí seleccionamos PHP, para entonces darle click al botón Añadir.
  7. Cherokee PHP

  8. Por último, te sugerimos reiniciar el sistema para que todos los cambios sean aplicados.

Si te das cuenta, no hay que hacer nada para que Cherokee reconozca a MySQL. Por otro lado, el proceso mencionado es para Ubuntu; para otras distribuciones recomiendo leer la documentación oficial de Cherokee.

¡A probar la velocidad de Cherokee Web Server!

Share

MySQL Workbench 5.2.17 Beta 7

MySQL Workbench LogoEl equipo de MySQL ha liberado MySQL Workbench 5.2.17 Beta 7, que incluye muchos de los cambios que ya les habíamos platicado.

Esta versión se enfoca en el rediseño de la interfaz de usuario, así como en la usabilidad y eficiencia de la aplicación. Ya la he instalado y se nota no sólo el lavado de cara, si no un mejor desempeño y mayor velocidad en general.

MySQL Workbench 5.2.17 Beta 7 corriendo en Ubuntu

Por primera vez desde el surgimiento de MySQL Workbench, estoy pensando seriamente en por fin abandonar MyQL Query Browser y MySQL Administrator a favor de esta renovada aplicación.

Enlace: Descargar MySQL Workbench 5.2.17 Beta 7.

Via MySQL Workbench Team Blog.

Share