Cómo instalar y configurar MySQL Server en Windows

    Introducción

    MySQL Es el sistema de gestión de bases de datos de relaciones (RDBMS) más utilizado en el mundo, y proporciona datos para aproximadamente un tercio de las aplicaciones actuales.

    MySQL utiliza un lenguaje de datos SQL estandarizado y funciona en muchos sistemas operativos con controladores que permiten a los desarrolladores conectarse a todos los lenguajes de programación populares.

    Es un sistema de administración de bases de datos confiable, de código abierto y confiable que utiliza WordPress, Facebook, Twitter y YouTube, creado en 1995 y luego comprado por Sun Microsystems en 2008. Luego fue adquirido por Oracle Microsystems en 2010, dejando a MySQL propiedad .

    En este artículo, descargaremos e instalaremos MySQL en Windows y validaremos cómo funciona creando una base de datos simple con algunas tablas.

    Cómo configurar MySQL

    Windows (especialmente Windows 10) requiere un poco de trabajo. Para descargar la última versión de MySQL, debe ir a la página web oficial y descarga la versión comunitaria. El instalador es bastante simple, pero puede tener algunos problemas.

    Si no tiene problemas, elija una contraseña y espere a que el procedimiento de instalación siga todos los pasos.

    Ahora, dependiendo del idioma con el que desee utilizar MySQL, deberá instalar un conector que es esencialmente un controlador específico para cada idioma. Por ejemplo, Conector / J. El controlador oficial es Java Database Connectivity (JDBC), sin embargo Conector / Python El conector oficial es Python.

    Todos los conectores se pueden encontrar en el Descargas de MySQL página.

    Usaremos un root usuario con la contraseña simplepassword. Mucha gente decide dejar la contraseña en blanco para simplificar las cosas en su entorno de desarrollo.

    Ahora que MySQL (con suerte) está instalado en Windows, debe navegar a la instalación bin una carpeta que parece algo C:Program filesMySQLMySQL Server 8.0bin en la línea de comando:

    > cd C:Program filesMySQLMySQL Server 8.0bin
    

    O agregue la carpeta bin a una variable de entorno de ruta yendo a Propiedades del sistema -> Variables ambientales -> Agregar una ruta y una ruta a su bin carpeta:

    Establecimiento de la base de datos

    Crearemos una base de datos de muestra llamada studies para ayudar a los estudiantes a realizar un seguimiento de su Licenciatura en Ciencias de la Computación. Primero creemos dos tablas:

    • exams – realiza un seguimiento de todos los exámenes tomados / reprobados por el estudiante.
    • courses – contiene todos los cursos que el estudiante debe tomar para completar sus estudios de licenciatura.

    Nota: Las declaraciones de MySQL terminan con un punto y coma (;)

    Si agregó MySQLs bin carpeta como una variable de entorno, puede usarla a través del terminal simplemente llame mysql. Por supuesto, necesitamos proporcionar credenciales junto con el comando inicial:

    > mysql -u root -p simplepassword
    

    El es -u Una bandera indica el nombre de usuario y el -p Una bandera indica la contraseña.

    Iniciar sesión en MySQL Monitor le pedirá que:

    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 2
    Server version: 8.0.0-log MySQL Community Server (GPL)
    
    Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql>
    

    Ahora, hagamos el help ordene y vea lo que podemos hacer:

    List of all MySQL commands:
    Note that all text commands must be first on line and end with ';'
    ?         (?) Synonym for `help'.
    clear     (c) Clear the current input statement.
    connect   (r) Reconnect to the server. Optional arguments are db and host.
    delimiter (d) Set statement delimiter.
    ego       (G) Send command to mysql server, display result vertically.
    exit      (q) Exit mysql. Same as quit.
    go        (g) Send command to mysql server.
    help      (h) Display this help.
    notee     (t) Don't write into outfile.
    print     (p) Print current command.
    prompt    (R) Change your mysql prompt.
    quit      (q) Quit mysql.
    rehash    (#) Rebuild completion hash.
    source    (.) Execute an SQL script file. Takes a file name as an argument.
    status    (s) Get status information from the server.
    tee       (T) Set outfile [to_outfile]. Append everything into given outfile.
    use       (u) Use another database. Takes database name as argument.
    charset   (C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
    warnings  (W) Show warnings after every statement.
    nowarning (w) Don't show warnings after every statement.
    resetconnection(x) Clean session context.
    
    For server side help, type 'help contents'
    
    mysql>
    

    Lo que realmente nos interesa son los comandos que podemos usar para manipular datos. Entonces podemos navegar a help <item> sitio <item> pueden ser: Gestión de cuentas, Composition Statements, Manipulación de datos, Funciones, Plugins, etc … Nos interesa la Manipulación de datos, ya que queremos crear una tabla:

    mysql> help Data Manipulation
    You asked for help about help category: "Data Manipulation"
    For more information, type 'help <item>', where <item> is one of the following
    topics:
       CALL
       DELETE
       DO
       DUAL
       HANDLER
       INSERT
    ...
    

    Puede leer más sobre estos llamando help <item> de nuevo, pero generalmente son bastante fáciles.

    Vamos create base de datos llamada studies:

    mysql> create database studies;
    

    Está probado, pero no estamos “en la base de datos” por defecto. Observamos todas las bases de datos que hemos creado actualmente en el servidor:

    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | studies            |
    +--------------------+
    1 rows in set (0.00 sec)
    

    Ahora, sigamos adelante y use la base de datos:

    mysql> use studies;
    

    Debería ver “Base de datos cambiada” impresa después de ese comando si todo salió bien.

    Echemos un vistazo a cómo nuestro courses la tabla aparecerá:

    CourseID Nombre Semestre AEC
    clave primaria, int varchar En t En t

    Nota: MySQL admite el salto de línea en la línea de comando y permanece con una línea que termina con ; para finalizar la declaración, de modo que pueda escribir lo siguiente línea por línea, reemplazándolos todos a la vez.

    CREATE TABLE courses (
        CourseID INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
        Name VARCHAR(50) NOT NULL,
        Semester INT NOT NULL,
        ESPB INT NOT NULL
    );
    

    Esto crea una tabla, llamada courses con varias capas CourseID, Name, SemesteryESPB. Cada uno tiene sus respectivos tipos de datos como INT y VARCHAR. Hay todos ellos NOT NULL, lo que significa que si intentamos ingresar un NULL valor, reparto de excepciones.

    El es CourseID la columna está configurada para ser PRIMARY KEY, lo que significa que se utilizará como clave de identificación para los cursos. AUTO_INCREMENT eso significa que cada vez que agregamos un nuevo curso a la tabla, el CourseID 1 se incrementará automáticamente para evitar ID duplicados.

    Ahora, hagamos lo mismo con el exams mesa:

    CARNÉ DE IDENTIDAD CourseID Año de construcción Período Grado Puntos Final
    clave primaria, int clave externa, int En t varchar En t flotador booleano
    CREATE TABLE exams (
        ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
        CourseID INT NOT NULL REFERENCES courses(CourseID),
        YearTaken INT DEFAULT NULL,
        Period VARCHAR(20) DEFAULT NULL,
        Grade INT NOT NULL,
        Points FLOAT NOT NULL,
        Final BOOLEAN NOT NULL
    );
    

    Aquí estamos acostumbrados REFERENCES para definir un ID externo, que es solo un ID de otra tabla que debe coincidir con el ID en esta tabla. Debido a que los exámenes están relacionados con el curso, todos los exámenes deben ser válidos CourseID.

    Estamos acostumbrados YearTaken reemplace “Año” simplemente porque “Año” es una palabra clave en SQL.

    Completemos estas dos tablas con algunos detalles para que tengamos algo con lo que trabajar:

    INSERT INTO courses VALUES (2100, "Algorithms and Data Structures", 3, 6);
    INSERT INTO courses VALUES (1520, "Linear Algebra and Analytic Geometry", 1, 7);
    INSERT INTO courses VALUES (666, "Calculus 2", 4, 6);
    INSERT INTO courses VALUES (782, "Methodology of Scientific Research", 8, 2);
    INSERT INTO courses VALUES (1890, "Object-Oriented Programming", 4, 6);
    INSERT INTO courses VALUES (220, "Programming 1", 1, 8);
    
    INSERT INTO exams (CourseID, YearTaken, Period, Grade, Points, Final)
        VALUES (2100, 2018, "june", 9, 82, true);
    INSERT INTO exams (CourseID, YearTaken, Period, Grade, Points, Final)
        VALUES (1520, 2017, "july", 5, 41, false);
    INSERT INTO exams (CourseID, YearTaken, Period, Grade, Points, Final)
        VALUES (1520, 2017, "sept", 8, 71, true);
    INSERT INTO exams (CourseID, Grade, Points, Final)
        VALUES (1890, 10, 100, true);
    INSERT INTO exams (CourseID, Grade, Points, Final)
        VALUES (220, 8, 79, false);
    INSERT INTO exams (CourseID, Grade, Points, Final)
        VALUES (220, 10, 92, true);
    

    Pasar estos comandos debería resultar en lo siguiente

    Query OK, `n` rows affected (time_elapsed)
    

    Echemos un vistazo a las tablas que tenemos en ejecución:

    mysql> show tables;
    

    Como resultado:

    +-------------------+
    | Tables_in_studies |
    +-------------------+
    | courses           |
    | exams             |
    +-------------------+
    2 rows in set (0.00 sec)
    

    Ahora, podemos llamar a algunas consultas en estas tablas, como INSERT, ALTER, DELETE, SELECTetc.

    Mediante la ejecución:

    select * from courses;
    

    queremos todo de courses mesa:

    mysql> select * from courses;
    +----------+--------------------------------------+----------+------+
    | CourseID | Name                                 | Semester | ESPB |
    +----------+--------------------------------------+----------+------+
    |      220 | Programming 1                        |        1 |    8 |
    |      666 | Calculus 2                           |        4 |    6 |
    |      782 | Methodology of Scientific Research   |        8 |    2 |
    |     1520 | Linear Algebra and Analytic Geometry |        1 |    7 |
    |     1890 | Object-Oriented Programming          |        4 |    6 |
    |     2100 | Algorithms and Data Structures       |        3 |    6 |
    +----------+--------------------------------------+----------+------+
    6 rows in set (0.00 sec)
    

    ¡Nuestra base de datos parece funcionar perfectamente!

    Problemas de instalación de Windows 10

    El instalador se inicia, pero luego se detiene solo. Soluciones posibles:

    • Abra el “Administrador de tareas” y si “Windows Installer” se está ejecutando y no utiliza recursos, elimínelo, es probable que la instalación continúe normalmente después de eso.
    • Ejecute el instalador como administrador; no puede hacer esto con el clic derecho normal -> Ejecutar como administrador (no disponible para .msi archivos). En su lugar, debe navegar hasta el instalador en la consola de administración (haga clic con el botón derecho en el ícono de Windows, luego en PowerShell (Admin) y ejecútelo desde allí, o simplemente escriba la ruta completa en la consola de administración. En nuestro caso el camino estaba completo H:Downloadsmysql-installer-community-8.0.17.0.msi.

    Las necesidades fallaron:

    • Si recibe un mensaje durante la instalación que dice que tiene “Requisitos de falla”, regrese a la pestaña “Seleccionar tipo de conjunto” y “Personalizar” y luego elimine los requisitos de falla (si no es arriba, ha instalado una instancia de ejemplo) que pueden resolver la cuestión.

    Conclusión

    MySQL es el sistema de gestión de bases de datos de relaciones (RDBMS) más utilizado en el mundo y proporciona datos para aproximadamente un tercio de las aplicaciones actuales.

    Utiliza un lenguaje de datos SQL estandarizado y funciona en muchos sistemas operativos con controladores que permiten a los desarrolladores conectarse a todos los lenguajes de programación populares.

    Hemos instalado y configurado una base de datos simple con algunas tablas para validar si está funcionando correctamente.

    .

    Etiquetas:

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *