Httpd, PHP, Tomcat, Mod_JK, Java y MySQL en Windows y NetBeans (II)


Httpd, PHP, Tomcat, Mod_JK, Java y MySQL en Windows y NetBeans

En la entrada anterior había mostrado como hacer la instalación de Apache Httpd, Apache Tomcat, PHP y Mod_JK;  Ahora mostraré la instalación de MySQL y algunos ejemplos con PHP y JSP.

Instalando MySQL 5.1.51… descargué la versión para Windows y ejecuté el asistente. La documentación llamada refman-5.1-en.html-chapter.zip
Al comenzar aparece la bienvenida por lo que presionamos el botón “Next”. Elegimos el botón de radio “custom” para una instalación personalizada y presionamos el botón “Next”.Al igual que en el Post anterior la instalación de MySQL se hará en la carpeta ServerWeb presionando luego el botón “OK”.Elegimos las características de nuestra instalación y luego presionamos el botón “Next”.Luego de leer las disposiciones de instalación presionamos el botón “Install”.Aparece el proceso de instalación.Aparece un aviso de suscripción de MySQL, presionamos “Next”.Aparece un segundo aviso acerca de servicio de Monitoreo, presionamos “Next”.Finaliza la instalación con el asistente, Nos aseguramos que la casilla de verificación “Configure the MySQL Server now” quede marcada y presionamos el botón “Finish”.Ahora nos aparece el asistente de Configuración al que le presionamos el botón “Next”.Elegimos el botón de radio “Detailed Configuration” y se presiona el botón “Next”.Elegimos el botón de radio “Developer Machine” y se presiona el botón “Next”.Elegimos el botón de radio “Multifunctional Database” y presionamos el botón “Next”.Ahora disponemos la ruta de instalación de InnoDB, aunque reamente yo seleccione la misa ubicación donde se hizo la instalación de MySQL.Aquí podemos ver que es en el subdirectorio \bin del directorio de instalación de MySQL, presionamos el botón “Next”. Ahora seleccionamos el botón de radio “Decision Support (DSS)/OLAP” y luego se presiona el botón “Next”.Marcamos las tres casillas de verificación, dejamos el puerto 3306 (a menos que se requiera otro puerto) y presionamos Next.Elegimos el conjunto de caracteres utf8 en “Manual Selected Default Character Set / Collation” y presionamos Next. Marcamos las tres casillas de verificación y presionamos Next.En el caso de que sea una instalación Nueva o Limpia debe aparecer esta imagen, en la que es necesario establecer la contraseña del “root” y presionamos el botón “Next”.Aparece la pantalla para empezar a ejecutar la configuración de MySQL, la cual inicia al presionar el botón “Execute”.Si todo sale bien aparecerá la pantalla siguiente, en la cual basta presionar “Finish”.Habrá finalizado el proceso de configuración de MySQL.

En el caso de que no sea una instalación limpia, pueda que aparezca la siguiente pantalla, solicitando la actualización de la contraseña del “root” a la cual si le presionamos el botón Next,y que más adelante al ejecutar la configuración después de presionar el botón “Execute”, nos aparezca la siguiente pantalla, con el siguiente error:
Cannot create Windows service for MySQL. Error 0.”La solución propuesta por MySQL en su sitio Web es borrar el Servicio MySQL a través de la Consola CMD, escribiendo “sc delete mysql“.Sin embargo pueda que aparezca otro mensaje de error:
Could not start the service MySQL.
Entonces lo mejor es desinstalar a MySQL por completo, después borramos o renombramos la carpeta \MySQL que está ubicada en “C:\ProgramData“; eliminamos la entrada “Description” cuyo valor es “MySQL Ser” del registro de Windows, que está ubicado en la ruta:
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services“.
Procedemos a hacer nuevamente la instalación de MySQL que debería ser exitosa.

Como nuestra intención es usar MySQL a través de JSP y PHP, debemos hacer un cambio adicional ya que hay un problema al hacer uso de MySQL através de PHP, el cual consiste en que no se produce la conexión através de localhost con alguna base de datos de MySQL.  Para poder hacer la conexión hay dos opciones:
Una es usar la ip 127.0.0.1 en vez de localhost.
La otra consiste en hacer un cambio (comentando la línea “::1 localhost“) en el archivo hosts ubicado en la ruta “C:\Windows\System32\drivers\etc\” como se indica en la imagen.
Ahora hacemos una prueba de ingreso a MySQL, a través de la consola CMD escribiendo “mysql -u root -p” y la contraseña del “root” establecida anteriormente.
Vamos a crear una base de datos, usuario, etc para que posteriormente podamos hacer pruebas con JSP y PHP.
Ejecutamos los siguientes comandos:
Para ver los usuarios en MySQL: “SELECT host, user, password FROM mysql.user;
Crear una base de datos llamada LaBase: “CREATE DATABASE LaBase;
Crear un usuario “elusuario” con contraseña “laclave” y permisos a la base antes creada: “GRANT ALL ON LaBase.* TO elusuario@localhost IDENTIFIED BY ‘laclave’;
Ver permisos de “elusuario”: “SHOW GRANTS FOR elusuario@localhost;
Ahora le decimos a MySQL que use la base de datos llamada “LaBase”: “USE LaBase;
Creamos la tabla “LaTabla”: “CREATE TABLE LaTabla ( Num integer,Cad varchar(30));
Ver la estructura de la base datos “LaBase”: “SHOW CREATE DATABASE LaBase;
Ver la estructura de la tabla “LaTabla”: “SHOW CREATE TABLE LaBase.LaTabla;
Ahora le insertamos algunos datos a la tabla para hacer pruebas:
INSERT INTO LaTabla (Num, Cad) VALUES (0,’Cero’), (9,’Nueve’), (2,’Dos’);
INSERT INTO LaTabla VALUES (7,’Siete’), (4,’Cuatro’), (5,’Cinco’);
INSERT INTO LaTabla VALUES (6,’Seis’), (3,’Tres’), (8,’Ocho’), (1,’Uno’);
Por último vemos lo insertado: “SELECT * FROM LaTabla;
Hasta ahora tenemos listo una base de datos de prueba, con un usuario que puede usarla.
Primero el ejemplo de uso de la base de datos en PHP, creando un archivo llamado MySQL.php dentro del subdirectorio \htdocs del directorio de instalación de Apache Httpd.

<?php
  $host = "localhost";
  $Username = "elusuario";
  $Password = "laclave";
  $DataBaseName = "LaBase";
?>
<?php
  $Enlace = new mysqli($host,$Username,$Password,$DataBaseName);
  if ($Enlace->connect_error) {
      die('Connect Error (' . $Enlace->connect_errno . ') '. $Enlace->connect_error);
  }
  $Consulta = "SELECT * FROM LaTabla";
  $Resultado = $Enlace->query($Consulta);
  if (!$Resultado) {
    die ($Enlace->error);
  }
  while($Fila = $Resultado->fetch_array(MYSQLI_BOTH)){
    print "$Fila[Num] $Fila[Cad]; ";
  }
  $Resultado->close();
  $Enlace->close();
?>

Ahora probemos en el navegador en la dirección: http://localhost/MySQL.php
Segundo el ejemplo de uso de la base de datos en JSP, creando un archivo llamado MySQL.jsp dentro del subdirectorio \htdocs del directorio de instalación de Apache Httpd.

<%@ page import="java.sql.*" %>
<%@ page import="java.lang.*" %>
<%
   String host = "localhost";
   String User = "elusuario";
   String Pass = "laclave";
   String DB = "LaBase";
   try { Class.forName("com.mysql.jdbc.Driver"); }
   catch (ClassNotFoundException e) { out.println(e.toString()); }
   Connection Conexion = null;
   Statement Enunciado = null;
   ResultSet Resultado = null;
   try {
     Conexion = DriverManager.getConnection("jdbc:mysql://"+host+"/"+DB,User,Pass);
     Enunciado = Conexion.createStatement();
   }
   catch (SQLException e) { out.println(e.toString()); }
   catch (Exception e) { out.println(e.toString()); }
   String Consulta = "SELECT * FROM LaTabla";
   try { Resultado = Enunciado.executeQuery(Consulta); }
   catch (SQLException e) { out.println(e.toString()); }
   while (Resultado.next()) {
     out.println (Resultado.getInt("Num") + " " + Resultado.getString("Cad")+"; ");
   }
   Enunciado.close();
   Conexion.close();
 %>

Ahora probemos en el navegador en la dirección: http://localhost/MySQL.jsp

Hasta aquí hemos ejecutado código Script para PHP y JSP conectándose a una base de datos de MySQL.

Ahora vamos a instalar un administrador llamado MySQL Workbench 5.2.30 para Windows.
Comenzamos la instalación, al parecer la bienvenida del asistente presionamos el botón “Next”
Seleccionamos la carpeta destino de instalación, como es relacionada a MySQL entonces la elegimos dentro del directorio de instalación de éste, que a su vez queda dentro de la carpeta ServerWebLuego de elegir la carpeta de instalación presionamos el botón “Next”.Elegimos la opción “Complete” para una instalación completa y se presiona el boyón “Next”.Si no deseamos hacer más cambios presionamos el botón “Install” para comenzar la instalación.Comienza el proceso de instalación.Finalizado el proceso presionamos el botón “Finish”, con la opción de lanzar a MySQL WorkbenchUna vez finalizada la instalación MySQL Workbench abre, pero debemos crear una conexión a MySQL, en el menú principal eligiendo Database y luego Manage Connectios…En el cuadro de diálogo Manage DB Connections ponemos el nombre de nuestra conexión, a la cual llamé Principal En el cuadro de diálogo anterior presionamos el botón Store in Vault… para almacenar el password y por último el botón OKVemos que se ha creado la conexión Principal y podemos presionar Open Connection to Start Querying para operar sobre las bases de datos que estén en MySQLAhora miremos un pantallazo “modificado” del entorno de trabajo. Ya podemos administrar gráficamente las bases de datos de MySQL sin la obligación de hacerlo a través de la consola.

Quedo en deuda con NetBeans, Java (actualización) que más adelante describiré en otro post.

Windows 7  y  MySQL 5.5.9
Para configurar MySQL 5.5.9 en Windos 7, salió un error el cual se puede arreglar también:
The security settings could not be applied to the database because the connection has failed with the following error.

Error Nr.1364
Field ‘authentication_string’ doesn’t have a default value

If a personal firewall is running on your machine, please make sure you have opened the TCP port 3306 for connections. Otherwise no client application can connect to the server. After you have opened the port please press [Retry] to apply the security settings.

If you are re-installing after you just uninstalled the MySQL server please note that the data directory was not removed automatically. Therefore the old password from your last installation is still needed to connect to the server. In this case please select skip now and re-run the Configuration Wizard from the start menu.


Le damos Skip y hacemos cambios a través de la consola de Windows, cmd.
Ingresamos a Mysql como se detalla en la imagen con:
mysql -uroot -p
luego seleccionamos la base de datos mysql, posteriormente le damos la siguiente sentencia:
ALTER TABLE `mysql`.`user` CHANGE `authentication_string` `authentication_string` TEXT CHARACTER SET utf8 COLLATE utf8_bin NULL ;.
Y retomamos la configuración con MySQL Instance Configuration Wizard, estableciendo los mismos parámetros indicados como al principio.

Al finalizar vemos que estos cambios han surtido efecto.

Acerca de joseluisbz

Hasta ahora, espero actualizarlo después, ahora no.
Esta entrada fue publicada en Apache, databases, Httpd, Java, Java Server Pages, JSP, MySQL, Netbeans, PHP, Servidores Web, Software, Tomcat, Windows y etiquetada , , , , , , , , , , , , , . Guarda el enlace permanente.

3 respuestas a Httpd, PHP, Tomcat, Mod_JK, Java y MySQL en Windows y NetBeans (II)

  1. alcira dijo:

    Estuve intentando instalar MySQL 5.5.9 y me salió el error
    “the security settings could not be applied to the database because the connection” error number 1364…
    Me toco seguir el manual…
    http://www.opensourcevarsity.com/mysqlbasics/mysqlinstall

  2. Alcira dijo:

    Saber que base de datos está abierta o usada y porque usuario:
    SELECT * FROM information_schema.PROCESSLIST;

  3. Alcira dijo:

    Otra Manera de ver bases de datos:
    http://dev.mysql.com/doc/refman/5.0/es/information-schema-tables.html
    SELECT * FROM information_schema.SCHEMATA;

    Para ver los comentarios de las bases de datos:
    SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLUMN_COMMENT FROM information_schema.COLUMNS where TABLE_SCHEMA like “NombreBaseDeDatos”;

    SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLUMN_COMMENT FROM information_schema.COLUMNS where TABLE_SCHEMA like “mysql”;

    SELECT TABLE_NAME,COLUMN_NAME,COLUMN_COMMENT FROM information_schema.COLUMNS where TABLE_SCHEMA = “information_schema” ;

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s