Herramientas de usuario

Herramientas del sitio


bases_de_datos:mysql:uso_basico

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
bases_de_datos:mysql:uso_basico [2016/12/09 12:11] albertobases_de_datos:mysql:uso_basico [2016/12/09 14:08] (actual) – [En Linux] alberto
Línea 5: Línea 5:
  
 Para conectarse al servidor, se requerirá un usuario (//login//) y una contraseña (//password//), y la dirección del servidor si se trata de una máquina diferente a la del cliente. En la consola de comandos, nos conectaremos de la forma: Para conectarse al servidor, se requerirá un usuario (//login//) y una contraseña (//password//), y la dirección del servidor si se trata de una máquina diferente a la del cliente. En la consola de comandos, nos conectaremos de la forma:
-<code shell+<code> 
-shell> mysql -h NombreDelServidor -u NombreDelUsuario -p+shell> mysql -h NombreDelServidor -u NombreDelUsuario -p [Nombre de la base de datos a utilizar]
 </code> </code>
  
-A continuación nos pedirá la contraseña. También puede indicarse a continuación de -p, pero esto podría representar un problema de seguridad.+A continuación nos pedirá la contraseña. También puede indicarse a continuación de -p (sin dejar ningún espacio), pero esto podría representar un problema de seguridad.\\ 
 + 
 +Una vez nos hayamos conectado al servidor MySQL, nos aparecerá el prompt **mysql>** que indica que el sistema está listo para recibir comandos.\\ 
 + 
 +Por defecto la instalación de MySQL incorpora dos usuarios: administrador (//root//) e invitado (//ODBC// y tambión ''), ambos con privilegios de administrador cuando se conectan de modo local (en la misma máquina) al servidor. Estos usuarios no requieren de contraseña y pueden suponer un riesgo de seguridad.\\ 
 + 
 +Normalmente, tras la instalación de mysql se generan las bases de datos "test" y "mysql". La base de datos "test" sólo sirve para hacer pruebas y está pensada para que los usuarios que están aprendiendo la usen para fines didácticos. La base de datos "mysql" es necesario para que el sistema funciones, ya que contiene información de los privilegios de los usuarios MySQL.\\ 
 + 
 +Para desconectarnos podemos escribir el comando **quit** ó **exit**. 
 + 
 +===== Consultas básicas ===== 
 +A continuación se especifican algunas consultas báicas para el administrador de MySQL: 
 +  * Consulta para conocer la versión del servidor y la fecha actual: 
 +<code mysql> 
 +SELECT version(), current_date(); 
 +</code> 
 + 
 +  * Consulta para conocer el nombre del usuario que ha efectuado la conexión: 
 +<code mysql> 
 +SELECT user(); 
 +</code> 
 + 
 +  * Consultar usuarios, host y contraseñas (encriptadas) de usuarios del servidor: 
 +<code mysql> 
 +SELECT user, host, password from mysql.user; 
 +</code> 
 + 
 +  * Añadir password encriptada al usuario //root//, según el host desde el que se conecte: 
 +<code mysql> 
 +SET PASSWORD FOR root=PASSWORD('new_password');  # Sirve para conectar con root desde cualquier máquina 
 +SET PASSWORD FOR root@localhost=PASSWORD('new_password'); # Sirve para conectar con root desde //localhost// 
 +</code> 
 + 
 +  * Establecer nueva contraseña encriptada a cualquier usuario: 
 +<code mysql> 
 +SET PASSWORD FOR NombreUsuario@HostUsuario=PASSWORD('new_password'); 
 +</code> 
 + 
 +  * Visualizar las bases de datos existentes en el servidor al que nos conectamos: 
 +<code mysql> 
 +SHOW DATABASES; 
 +</code> 
 + 
 +  * Para seleccionar la base de datos en la que realizaremos las operaciones (paso siguiente tras conectarnos a la base de datos): 
 +<code mysql> 
 +Use NombreBaseDeDatos   # El ';' no es obligatorio en este caso, y debe especificarse en una sola línea 
 +</code> 
 + 
 +  * Crear una base de datos: 
 +<code mysql> 
 +CREATE DATABASE NombreBaseDeDatos; 
 +</code> 
 + 
 +En Unix/Linux los nombres de las bases de datos sí son //Case Sensitive//, aunque el resto de las sentencias MySQL no lo sean. 
 + 
 +  * Visualizar la base de datos que estamos utilizando: 
 +<code mysql> 
 +SELECT database(); 
 +</code> 
 + 
 +Es posible acceder a una base de datos diferente de en la que se encuentra el usuario, si tiene los permisos necesarios, y lo indica de la forma: NombreDeLaBaseDeDatos.Tabla\\ 
 + 
 +  * Para ver un listado de las tablas de la base de datos en la que nos encontramos: 
 +<code mysql> 
 +SHOW TABLES; 
 +</code> 
 + 
 +  * Para ver la descripción de una tabla (columnas, tipos asociados, atributos que permiten valores nulos, etc): 
 +<code mysql> 
 +# Todas las sentencias siguientes son sinónimas 
 +DESC NombreTabla; 
 +DESCRIBE NombreTabla; 
 +SHOW COLUMNS FROM NombreTabla; 
 +</code> 
 + 
 +  * Para visualizar la sentencia de creación de una tabla de la base de datos: 
 +<code mysql> 
 +SHOW CREATE TABLE NombreTabla \G   # La '\G' permite ver la salida de la consulta en una sola fila 
 +</code> 
 + 
 +  * Para obtener información acerca de una tabla: 
 +<code mysql> 
 +SHOW TABLE STATUS [FROM NombreBaseDeDatos] [LIKE 'patron' # Patron puede ser el nombre de la tabla, o un patrón en el que se especifique parte de éste 
 +</code> 
 + 
 + 
 +===== Scripts ===== 
 +Dado que el cliente de consola de mysql no es demasiado amigable a la hora de trabajar con él, es posible escribir las sentencias largas en un editor de textos común (notepad, notepad++, etc) y "copiar" y "pegar" en la consola del cliente.\\ 
 +Para ello se escribe la sentencia en el procesador de textos y se "copia" de forma convencional. A continuación se "pega" en la consola con el botón derecho del ratón; y ENTER para ejecutarla.\\ 
 + 
 +Para ejecutar //scrits// en MySQL (varias secuencias de comandos predefinidas):  
 +  - Lo primero es crear los scripts a ejecutar en un procesador de textos convencional. Se recomienda unsar la extensión ".sql ", para poder identificar qué tipo de archivos son. El servidor MySQL no distingue entre extensiones, siempre intentará ejecutar el archivo que le proporcionemos. 
 +  - Para ejecutar el script desde la consola, sin habernos conectado al servidor: 
 +<code> 
 +Shell> mysql < DireccionCompleta\archivo.sql 
 +</code> 
 + 
 +Si deseamos que en caso de error en una sentencia sigan ejecutándose el resto de sentencias, tendremos que añadir el parámetro --force: 
 +<code> 
 +Shell> mysql --force < DireccionCompleta\archivo.sql 
 +</code> 
 + 
 +Si la máquina no está en la misma máquina, o nos estamos conectando a través de un cliente: 
 +<code> 
 +Shell> mysql -h DireccionHost -u UsuarioMysql -p < DireccionCompleta\archivo.sql 
 +</code> 
 + 
 +Si deseamos guardar la salida resultante de la ejecución del script: 
 +<code> 
 +Shell> mysql < DireccionCompleta\archivo.sql > salida-del-script.txt 
 +</code> 
 + 
 +Si deseamos lanzar el script desde el cliente de MySQL (ya conectados al servidor): 
 +<code mysql> 
 +SOURCE DireccionCompleta\archivo.sql 
 +\. DireccionCompleta\archivo.sql    # Equivalente al anterior, pero de forma abreviada 
 +</code> 
 + 
 +===== Proceso del servidor ===== 
 +En la mayoría de las instalaciones de MySQL. en sus distintas versiones, se selecciona por defecto la opción de arrancar automáticamente el proceso de servidor cuando arranca el host sobre el que está instalado.\\ 
 + 
 +El proceso (o demonio) servidor en MySQL se denomina //mysqld// o una de sus variantes //mysqld-opt//, //mysqld-nt//, //mysqld-max//, //mysqld-max-nt//. Más información en el [[http://dev.mysql.com/doc/refman/5.7/en/|manual oficial]].\\ 
 + 
 +==== En Windows ==== 
 +En Windows el proceso de MySQL se suele instalar como un servicio de Windows. Para comprobar su estado es necesario  acceder a la ventana de servicios (//services.msc//). Si no está instalado como un servicio de Windows, habría que acceder al Administrador de Tareas (//taskmgr// o ctrl+alt+supr).\\ 
 + 
 +Desde la ventana de servicios, podemos iniciar o detener el proceso, o incluso configurarlo para que inicie automáticamente al iniciar Windows. Otro modo de establecer el inicio automático es indicándolo en la consola de Windows a través de la opción //defaults-file//, que se encuentra en el [[fichero de configuración]]. El comando será similar al siguiente: 
 +<WRAP box> 
 +    C:\MySQL410\bin\mysqld-max-nt --defaults-file="C:\MySQL410\my.ini" 
 +</WRAP> 
 + 
 +Si lo que queremos es detener el proceso en la consola de comandos, lo mejor es usar el programa //mysqladmin// y añadirle la opción //shutdown// El comando sería el siguiente: 
 +<WRAP box> 
 +    c:\> mysqladmin -uroot -ppassword shutdown 
 +</WRAP> 
 + 
 + 
 + 
 +==== En Linux ==== 
 +Para saber si el demonio se está ejecutando en Linux, debemos abrir un terminal y ejecutar: 
 +<code bash> 
 +ps -A | grep mysqld 
 +</code> 
 + 
 +Si MySQL se está ejecutando, deberá retornar algo similar a: 
 +<WRAP box> 
 +    2752  ?   00:00:00 mysqld 
 +</WRAP> 
 + 
 +En Linux hay muchas formas de arrancar el servidor MySQL. Una de las más simples y seguras es arrancar al servidor a través del script de arranque //mysqld_safe//, que suele encontrarse en la carpeta //<nowiki>/usr/bin/</nowiki>// en la mayoría de las distribuciones.\\ 
 + 
 +Para detener el proceso en Linux, se puede usar el programa //mysqladmnin// de la misma manera que se vio en el apartado anterior, bajo Windows.
bases_de_datos/mysql/uso_basico.1481281873.txt.gz · Última modificación: por alberto

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki