Diferencia entre revisiones de «SQL»
Página creada con «SQL es un tipo de lenguaje de gestion de datos. Significa "Lenguaje de Consultas Estandar" (Standard Query Language), nos permite hacer preguntas a un servidor de base de datos relaciones como puede ser MariaDB, MySQL, PostgreSQL, etc. El proyecto usa MariaDB/MySQL (Son practicamente intercambiables) para guardar la contraseña del router de profesores (Proximamente) y los usuarios de FreeRADIUS. Hay un script, "'''aux/crear_cuentas_sql.sh'''" que nos ayuda a genera…» |
Sin resumen de edición |
||
| Línea 1: | Línea 1: | ||
=== ¿Que es SQL y para que se usa? === | |||
SQL es un tipo de lenguaje de gestion de datos. Significa "Lenguaje de Consultas Estandar" (Standard Query Language), nos permite hacer preguntas a un servidor de base de datos relaciones como puede ser MariaDB, MySQL, PostgreSQL, etc. | SQL es un tipo de lenguaje de gestion de datos. Significa "Lenguaje de Consultas Estandar" (Standard Query Language), nos permite hacer preguntas a un servidor de base de datos relaciones como puede ser MariaDB, MySQL, PostgreSQL, etc. | ||
| Línea 5: | Línea 6: | ||
Hay un script, "'''aux/crear_cuentas_sql.sh'''" que nos ayuda a generar cuentas validas para RADIUS, dejandonos elegir entre si queremos crear cuentas con contraseñas en "plaintext" o contraseñas "cifradas", cifradas es mucho mas recomendable. | Hay un script, "'''aux/crear_cuentas_sql.sh'''" que nos ayuda a generar cuentas validas para RADIUS, dejandonos elegir entre si queremos crear cuentas con contraseñas en "plaintext" o contraseñas "cifradas", cifradas es mucho mas recomendable. | ||
=== Uso de SQL === | === Tutoriales === | ||
==== Uso de SQL ==== | |||
Para usar SQL necesitamos un set paquetes, en nuestro caso, un servidor de SQL y un cliente.<blockquote>Notese: El cliente puede estar en otro equipo, aqui se toma como ejemplo un servidor con cliente local.</blockquote>Para esto, podemos instalar los paquetes "mariadb-common" y "mariadb-client" con el comando de '''Debian,''' y distribuciones basadas en este, '''apt install mariadb-client mariadb-common.''' | Para usar SQL necesitamos un set paquetes, en nuestro caso, un servidor de SQL y un cliente.<blockquote>Notese: El cliente puede estar en otro equipo, aqui se toma como ejemplo un servidor con cliente local.</blockquote>Para esto, podemos instalar los paquetes "mariadb-common" y "mariadb-client" con el comando de '''Debian,''' y distribuciones basadas en este, '''apt install mariadb-client mariadb-common.''' | ||
| Línea 29: | Línea 33: | ||
Genial! Con eso tenemos lo que nos hace falta para continuar con el tutorial, el cual asumes que sabes lo mas minimo de bash. | Genial! Con eso tenemos lo que nos hace falta para continuar con el tutorial, el cual asumes que sabes lo mas minimo de bash. | ||
=== Creacion de base de datos para RADIUS, usuario de MySQL. === | ==== Creacion de base de datos para RADIUS, usuario de MySQL. ==== | ||
Para lo siguiente necesitas haberte logueado en MySQL, tienes que tener el prompt ese de "mysql [none]" (O MariaDB), cuando estes dentro tienes que hacer una serie de cosas; | Para lo siguiente necesitas haberte logueado en MySQL, tienes que tener el prompt ese de "mysql [none]" (O MariaDB), cuando estes dentro tienes que hacer una serie de cosas; | ||
Revisión del 21:25 19 dic 2025
¿Que es SQL y para que se usa?
SQL es un tipo de lenguaje de gestion de datos. Significa "Lenguaje de Consultas Estandar" (Standard Query Language), nos permite hacer preguntas a un servidor de base de datos relaciones como puede ser MariaDB, MySQL, PostgreSQL, etc.
El proyecto usa MariaDB/MySQL (Son practicamente intercambiables) para guardar la contraseña del router de profesores (Proximamente) y los usuarios de FreeRADIUS.
Hay un script, "aux/crear_cuentas_sql.sh" que nos ayuda a generar cuentas validas para RADIUS, dejandonos elegir entre si queremos crear cuentas con contraseñas en "plaintext" o contraseñas "cifradas", cifradas es mucho mas recomendable.
Tutoriales
Uso de SQL
Para usar SQL necesitamos un set paquetes, en nuestro caso, un servidor de SQL y un cliente.
Notese: El cliente puede estar en otro equipo, aqui se toma como ejemplo un servidor con cliente local.
Para esto, podemos instalar los paquetes "mariadb-common" y "mariadb-client" con el comando de Debian, y distribuciones basadas en este, apt install mariadb-client mariadb-common.
Una vez tengamos los paquetes necesarios, podemos conectarnos a un servidor MySQL o MariaDB usando el comando de ejemplo: (Como superusuario, pues aun NO tenemos cuentas)
mysql
Lo que nos enviara a un tipo de shell de SQL. Puede tener un aspecto similar a:
MariaDB [(none)]>
Esto nos indica que estamos en un servidor MariaDB, y que no estamos en ninguna base de datos. Mas abajo explicare como interactuar con una base de datos, pero primero voy a explicar como se puede conectar a otro servidor, a una base especifica, con otro usuario, o en otro puerto.
El comando "mysql" por defecto se quiere conectar al host "127.0.0.1" (Que es localhost) y con el usuario del sistema que este ejecutando el comando, sin usar contraseña.
Esto no funciona siempre, muchas veces nos encontraremos con una base de datos que tiene un usuario diferente al que estamos usando para el login, o que tiene contraseña, aaque no esta en nuestro ordenador local, asi que vamos a aprender algunos argumentos que mysql puede necesitar en algun momento. Observa el ejemplo de abajo.
mysql -h 10.0.0.1 -u JPGAMER666 -p -D MiBaseSuperEpicaDeHacksDelFornite
¿Que hace el comando? (Paso a paso)
- mysql es el comando base (Como hemos visto antes
- -h 10.0.0.1 le dice que el Host de la base de datos esta en 10.0.0.1
- -u JPGAMER666 le indica que vamos a loguearnos con el usuario "JPGAMER666"
- -p hace al servidor consciente que queremos entrar con contraseña (Que nos la pida)
- -D MiBaseSuperEpicaDeHacksDelFornite es el nombre de la base de datos, con la "-D" para decirle que estamos entrando en esta base de datos.
- Nota: La -D Es MAYUSCULA, minuscula significa otra cosa.
Genial! Con eso tenemos lo que nos hace falta para continuar con el tutorial, el cual asumes que sabes lo mas minimo de bash.
Creacion de base de datos para RADIUS, usuario de MySQL.
Para lo siguiente necesitas haberte logueado en MySQL, tienes que tener el prompt ese de "mysql [none]" (O MariaDB), cuando estes dentro tienes que hacer una serie de cosas;
- Crear un usuario
- Crear una base de datos
- Darle permisos al usuario sobre la base de datos
- "Flush" los privilegios del usuario (Recargar)
- Importar las tablas "plantillas" de FreeRADIUS
Creando un usuario
Crear un usuario es un proceso muy sencillo, podemos usar el siguiente comando (DE SQL) como referencia:
CREATE USER 'Fran' IDENTIFIED BY 'FranPassword';
Donde "Fran" es el nombre de nuestro usuario, y "FranPassword" es la contraseña.
Nos tiene que devolver algo como
Query OK, 0 rows affected (0,015 sec)