sql >> Base de Datos >  >> RDS >> Mysql

Cómo conectar la base de datos MySQL con el sitio web de PHP

MySQL es un sistema de administración de bases de datos muy popular que puede impulsar proyectos de todos los tamaños. Su capacidad para manejar grandes volúmenes de datos sin sudar es uno de sus mayores puntos de venta. Conecte MySQL con código PHP, puede utilizar una de las tres metodologías.

Hay tres tipos de métodos en PHP para conectar la base de datos MySQL a través del backend:

  • MySQL
  • MySQLi
  • DOP

mysql() ahora está obsoleto debido a problemas de seguridad como la inyección de SQL, etc., pero los otros dos se están utilizando activamente.

MySQLi

MySQLi es una API que se utiliza como función de conector para vincular el backend de la aplicación PHP a la base de datos MySQL. Funciona igual que la versión anterior, pero es más segura y rápida, y proporciona un mejor conjunto de funciones y extensiones. MySQLi se introdujo con PHP 5.0.0 y los controladores se instalaron en 5.3.0. La API se diseñó para admitir MySQL desde la versión 4.1.13 hasta las más nuevas.

DOP

La extensión PHP Data Objects (PDO) es una capa de abstracción de base de datos. Es como una interfaz para que el backend interactúe con la base de datos MySQL y realice cambios sin realizar ningún cambio en el código PHP. También le da la libertad de trabajar con múltiples bases de datos. La principal ventaja de usar PDO es que su código se mantiene simple y portátil.

En este artículo, discutiré cómo conectar la base de datos MySQL en diferentes servidores y también le daré una descripción general de la conexión de la base de datos mediante PDO.

  1. Conectar MySQL usando el Servidor Localhost
  2. Conecte MySQL usando Cloudways Server
  3. Conectar MySQL usando PDO
  4. Conectar MySQL usando MySQL remoto

Descargar hoja de trucos de MYSQL ahora

Le enviaremos un enlace de descarga a su bandeja de entrada.

Gracias

Su libro electrónico está en camino a su bandeja de entrada.


Crear base de datos MySQL en Localhost

Antes de comenzar a construir una conexión PHP con la base de datos MySQL, debe saber qué es PHPMyAdmin. Es un panel de control desde donde puedes administrar la base de datos que has creado. Abra su navegador y vaya a localhost/PHPMyAdmin o haga clic en "Administrar" en la interfaz de usuario de XAMPP.

Cuando instaló XAMPP por primera vez, solo creó el nombre de usuario para acceder, ahora debe agregarle una contraseña usted mismo. Para esto, debe ir a Cuenta de usuario donde el usuario es el mismo que se muestra en esta imagen:

Ahora haga clic en Editar privilegios y vaya a Cambiar contraseña de administrador, escriba su contraseña allí y guárdela. Recuerde esta contraseña, ya que se utilizará para conectarse a su base de datos.

Nota:No es necesario cambiar la contraseña para acceder a las bases de datos en el host local. Es una buena práctica y por eso hemos utilizado una contraseña.

Crear base de datos

Ahora regrese a la página de inicio de PHPMyAdmin. Haga clic en Nuevo botón para crear una nueva base de datos.

En la nueva ventana, asigne un nombre a su base de datos según sus necesidades, la estoy nombrando "práctica ”. Ahora seleccione Colation como utf8_general_ci, ya que lo estamos usando con fines de aprendizaje y manejará todas nuestras consultas y datos que se tratarán en esta serie de tutoriales. Ahora haga clic en Crear y se creará su base de datos.

La base de datos recién creada estará vacía ahora, ya que no contiene tablas. Cubriré eso en la próxima serie donde aprenderemos cómo crear tablas e insertar datos en ellas. En este tutorial, vamos a conectar esta base de datos a localhost usando PHP

Crear una carpeta en htdocs

Ahora, ubique la carpeta donde instaló XAMPP y abra la carpeta htdocs (generalmente c:/xampp). Cree una nueva carpeta dentro de c:/xampp/htdocs/ y asígnele el nombre "práctica". Colocaremos los archivos web en esta carpeta. ¿Por qué hemos creado una carpeta en htdocs? XAMPP usa carpetas en htdocs para ejecutar y ejecutar sus sitios PHP.

Nota:si está utilizando WAMP, agregue su carpeta de práctica en la carpeta c:/wamp/www.

Crear archivo de conexión de base de datos en PHP

Cree un nuevo archivo PHP y asígnele el nombre db_connnection.php y guardarlo ¿Por qué estoy creando un archivo de conexión de base de datos separado? Porque si ha creado varios archivos en los que desea insertar datos o seleccionar datos de las bases de datos, no necesita escribir el código para la conexión a la base de datos cada vez.

<?php

function OpenCon()
 {
 $dbhost = "localhost";
 $dbuser = "root";
 $dbpass = "1234";
 $db = "example";


 $conn = new mysqli($dbhost, $dbuser, $dbpass,$db) or die("Connect failed: %s\n". $conn -> error);

 
 return $conn;
 }
 
function CloseCon($conn)
 {
 $conn -> close();
 }
   
?>

Aquí está la explicación de la variable que hemos usado en nuestro archivo db_connection:

  1. $dbhost será el host donde se ejecuta su servidor, generalmente es localhost.
  2. $dbuser será el nombre de usuario, es decir, root y $dbpass será la contraseña que es la misma que usó para acceder a su PHPMyAdmin.
  3. $dbname será el nombre de su base de datos que hemos creado en este tutorial.

Solo tiene que incluirlo usando la función personalizada de PHP include (incluya 'conexión.php') en la parte superior de su código y llame a su función y utilícela. También ayuda cuando está moviendo la ubicación de su proyecto de una PC a otra y tiene que cambiar los valores en el archivo único y todos los cambios se aplicarán a todos los demás archivos automáticamente.

Cree un nuevo archivo PHP para verificar la conexión de su base de datos

Cree un nuevo archivo PHP para conectarse a su base de datos. Nómbrelo index.php y agregue este código en este archivo.

<?php
include 'db_connection.php';

$conn = OpenCon();

echo "Connected Successfully";

CloseCon($conn);

?>

¡Ejecutarlo!

Ahora abra su navegador y vaya a localhost/practice/index.php y debería ver esta pantalla:

Mensaje de confirmación

¡Felicidades! ¡Ha conectado con éxito su base de datos con su host local! Si no puede ver esta pantalla, verifique si ha hecho todo bien en su archivo db_connection.php.

Crear base de datos MySQL en Cloudways Server

A los efectos de este tutorial, asumo que tiene una aplicación PHP instalada en un servidor web. Mi configuración es:

  • PHP 7.3
  • MySQL

Decidí alojar mi aplicación PHP en servidores administrados por Cloudways porque obtengo una pila de alojamiento altamente optimizada y sin problemas de administración del servidor. Puede probar Cloudways de forma gratuita iniciando sesión en una cuenta y luego siguiendo este simple GIF para configurar el servidor y la aplicación PHP. Consulte los planes de alojamiento de Cloudways para AWS, Google Compute Engine, Vultr, Linode y Digital Ocean para encontrar el adecuado para usted.

Después de iniciar con éxito una aplicación PHP en Cloudways, vaya a la pestaña de la aplicación y verifique los detalles de la base de datos y también haga clic en el botón para iniciar el administrador de la base de datos .

Conectarse a la base de datos MySQL

Para configurar una conexión a la base de datos, utilice mysql_connect función. Esta función devuelve un puntero (también conocido como identificador de base de datos) a la conexión de la base de datos. Este identificador se utilizará en el código más adelante. Una vez que tenga el identificador, recuerde agregar las credenciales de su base de datos.

  • Cree un nuevo archivo PHP y asígnele el nombre db_connnection.php y guardarlo

¿Por qué estoy creando un archivo de conexión de base de datos separado? Porque si ha creado varios archivos en los que desea insertar datos o seleccionar datos de las bases de datos, no necesita escribir el código para la conexión de la base de datos cada vez. Solo tiene que incluirlo usando la función personalizada PHP include (incluir 'connection.php') en la parte superior de su código y llamar a su función y usarla.

En este punto, tiene la opción de utilizar la consulta de conexión de procedimiento MySQLi o la conexión de base de datos basada en PHP PDO:

Consulta de procedimiento MySQLi

<?php

$servername = "localhost";

$username = "username";

$password = "password";

$db = "dbname";



// Create connection

$conn = mysqli_connect($servername, $username, $password,$db);



// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

echo "Connected successfully";

?>

Conectar base de datos MySQL con PHP usando PDO

<?php

$servername = "localhost";

$username = "username";

$password = "password";

$db = "dbname";



try {

   $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password, $db);

   // set the PDO error mode to exception

   $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

   echo "Connected successfully";

   }

catch(PDOException $e)

   {

   echo "Connection failed: " . $e->getMessage();

   }

?>

Comprobar conexión

<?php

include 'db_connection.php';

 

echo "Connected Successfully";

mysqli_close($conn);

?>

Para PDO cerrar la conexión así

$conn = null;

MySQL remoto

Para la conexión PHP MySQL remota, inicie sesión en Cloudways Platform con sus credenciales. Haga clic en “Servidores” en la barra de menú superior. Luego, haga clic en su servidor de destino de la lista.

  • A continuación, vaya a la opción de menú Seguridad en el menú de la izquierda y luego haga clic en la pestaña MySQL.
  • Agregue la dirección IP al área de texto "Agregar IP a la lista blanca" y haga clic en el botón "Agregar".
  • Si tiene varias direcciones IP, repita el proceso.
  • Una vez que haya terminado, haga clic en el botón "Guardar cambios" para finalizar los cambios

Después de configurar correctamente la lista blanca de IP, configure la dirección IP en conexión y ejecute la consulta.

Principales herramientas de administración de MySQL

Banco de trabajo MySQL

MySQL Workbench es una herramienta visual para diseñadores de bases de datos, desarrolladores y administradores de bases de datos. MySQL Workbench brinda modelado de datos, desarrollo de SQL y dispositivos de organización completos para la organización de servidores, organización de clientes, refuerzo y mucho más. Se puede acceder a MySQL Workbench en Windows, Linux y Mac OS X.

MySQL Workbench es un administrador de base de datos MySQL muy popular para desarrolladores. Proporciona útiles herramientas de administración como la configuración del servidor, la gestión de usuarios y muchas otras. Está disponible para los sistemas operativos MAC OS, Linux y Windows.

Aconsejamos a todos aquellos desarrolladores en ciernes que quieran aprender a administrar bases de datos que lo utilicen en su beneficio. Las funciones de administración los ayudarán a dominar la administración de la base de datos en su totalidad.

Ventajas

  1. Guarda sentencias SQL
  2. Proporciona acceso sin conexión a bases de datos remotas
  3. Almacena múltiples conexiones en una ubicación
  4. Esquema visual y generador de consultas disponibles

Contras

  1. Es más complejo en comparación con PHPMyAdmin.
  2. Los usuarios a menudo informan fallas de software.

Navicat es una serie de administración de bases de datos gráficas y desarrollo de software. Puede ser una sola aplicación que le permita conectarse a la conexión PHP MySQL y bases de datos MariaDB al mismo tiempo. Compatible con bases de datos en la nube como Amazon RDS, Amazon Aurora, Oracle Cloud, Google Cloud y Microsoft Azure.

Navicat for MySQL proporciona todas las herramientas avanzadas que un desarrollador requiere para administrar completamente las operaciones de su base de datos. Su compatibilidad con las bases de datos en la nube lo hace práctico para usar mientras se administra una aplicación basada en la nube. Algunas de sus principales características son:

Pros:

  1. IU intuitiva y fácil de usar.
  2. Proporciona una fácil conexión a la base de datos MySQL a través del terminal SSH.
  3. Programe trabajos de base de datos:copia de seguridad, restauración, ejecución de informes y más.
  4. Importe y exporte datos de ODBC, Excel, Access, DBF, TXT, CSV, XML, JSON.
  5. Generadores de consultas y esquemas visuales disponibles.
  6. Compatible con los sistemas operativos Windows, Linux y MAC.
  7. Función de colaboración en equipo disponible

Desventajas:

  1. La versión profesional es cara
  2. La ejecución en Linux requiere Wine, que ralentiza el IDE.
  3. Gestión de procesos que requiere mucho tiempo

MySQL Yog

Esta herramienta de administración de MySQL tiene tres paquetes disponibles, es decir, Professional, Enterprise y Pro. Puede elegir cualquiera de ellos después de probarlo.

Los administradores de MySQL pueden trabajar fácilmente con esta plataforma y pueden manejar sus tareas de base de datos con eficiencia. Está disponible solo para sistemas operativos Windows.

VENTAJAS

  1. Herramienta de diseño de consultas suave disponible
  2. Ofrece funciones avanzadas que ayudan en el aprendizaje de la administración de bases de datos.

CONTRAS

  1. La versión profesional es pesada en el bolsillo
  2. Los usuarios suelen informar fallas ocasionales del software
  3. No admite ninguna base de datos excepto MySQL
  4. Sin soporte nativo para los sistemas operativos Linux y MAC.
  5. No es compatible con arrastrar y soltar entre varias pestañas.

Administrador de base de datos MySQL de Cloudways

El administrador de base de datos MySQL de Cloudways es, con mucho, una de las herramientas de administración de MySQL más prácticas y útiles para los desarrolladores. Es muy fácil de usar debido a su interfaz de usuario fácil de usar y proporciona todas las herramientas de administración de MySQL necesarias que debe tener un administrador de base de datos:

Pros:

  1. Ofrece una interfaz de usuario fácil de usar y personalizable con funciones avanzadas.
  2. Diseña visualmente las tablas de esquema, las restricciones y las consultas.
  3. Fácil conexión a la base de datos MySQL mediante terminal SSH.

Contras

  1. No hay compatibilidad con arrastrar y soltar disponible para varias pestañas.
  2. Falta de soporte para bases de datos que no sean MariaDB, MySQL.
Preguntas frecuentes

P:¿Cómo verifico si MySQL se está ejecutando o no?

R:Para verificar si MySQL se está ejecutando, siempre que esté instalado como un servicio, puede ir a Inicio -> Panel de control -> Herramientas administrativas -> Servicios y buscar MySQL en esa lista. Compruebe si se está ejecutando o no.

P:¿Cómo encuentro mi puerto localhost para MySQL?

R:Si está utilizando MySQL Workbench, busque en la pestaña Sesión en el panel Información en la barra lateral. Si está utilizando phpMyAdmin, haga clic en Inicio, luego en Variables en el menú superior. Busque la configuración del puerto en la página. El valor establecido es su número de puerto MySQL.

P:¿Cuál es mi nombre de usuario y contraseña de MySQL localhost?

R:Consulte http://php.net/manual/en/function.mysql-connect.php. $nombreservidor =“localhost”; $nombre de usuario =“raíz”; $contraseña =“”; Es probable que esto funcione para nuevos usuarios y no olvide crear la base de datos antes de conectarse a ella.

P:¿Cuál es la función PHP estándar para conectarse a una base de datos MySQL?

R:Una de las razones por las que PHP funciona tan bien con MySQL es la función mysql_connect que abre una conexión a la base de datos. Esta función toma cinco argumentos.

Conclusión

Una buena estructura de base de datos es la columna vertebral de cualquier aplicación. Ya sea un CMS o una plataforma de seguimiento de tareas en línea, necesita una base de datos MySQL para realizar un seguimiento de la información de la aplicación y del usuario y los datos del servidor para los procesos de la aplicación.

En este tutorial, hemos aprendido dos cosas:

  • Cómo crear una nueva base de datos
  • Cómo conectar la base de datos MySQL con PHP

Tanto MySQLi como PDO tienen sus preferencias. Sin embargo, antes de comenzar, debe tener en cuenta que MySQL solo se usa para conectar MySQL con PHP, si necesita migrar a otra base de datos, deberá modificar todo el código. Por otro lado, PDO trabaja con 12 bases de datos diversas, lo que hace que la migración sea mucho menos exigente.