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

Utilice bases de datos relacionales MySQL en Ubuntu 10.04 LTS (Lucid)

MySQL es un popular sistema de gestión de bases de datos, utilizado como proveedor de almacenamiento de datos para miles de aplicaciones web y de servidor. Esta guía ayudará a los principiantes a comenzar con MySQL en un Ubuntu 10.04 LTS (Lucid) Linode. Para los fines de este tutorial, supondremos que ha seguido los pasos descritos en nuestraConfiguración y protección de una instancia informática, que su sistema está actualizado y que ha iniciado sesión en su Linode como root a través de SSH. Si está realizando estos pasos como un usuario estándar con privilegios de sudo, recuerde anteponer "sudo" a los comandos que se muestran a continuación.

Configuración Básica del Sistema

Asegúrese de que su /etc/hosts El archivo contiene valores sensibles. En el archivo de ejemplo a continuación, reemplazaría "12.34.56.78" con la dirección IP de su Linode y "servername.example.com" con el nombre de dominio completo (FQDN) de su Linode. Es aconsejable usar algo único y fácil de recordar para el "nombre del servidor" en este archivo.

Archivo:/ etc./hosts
1
2
127.0.0.1 localhost.localdomain localhost
12.34.56.78 servername.example.com servername

A continuación, asegúrese de que el nombre de host de su Linode esté configurado en el valor corto que especificó en /etc/hosts :

echo "servername" > /etc/hostname
hostname -F /etc/hostname

Para asegurarse de que universe los repositorios están habilitados, modifique su /etc/apt/sources.list archivo para reflejar el archivo de ejemplo a continuación.

Archivo:/ etc/apt/sources.list
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
## main & restricted repositories
deb http://us.archive.ubuntu.com/ubuntu/ lucid main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid main restricted

deb http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-src http://security.ubuntu.com/ubuntu lucid-security main restricted

## universe repositories
deb http://us.archive.ubuntu.com/ubuntu/ lucid universe
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid universe
deb http://us.archive.ubuntu.com/ubuntu/ lucid-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid-updates universe

deb http://security.ubuntu.com/ubuntu lucid-security universe
deb-src http://security.ubuntu.com/ubuntu lucid-security universe

Instalando MySQL

Asegúrese de que los repositorios de paquetes y los programas instalados estén actualizados emitiendo los siguientes comandos:

apt-get update
apt-get upgrade --show-upgraded

Comience emitiendo el siguiente comando en su terminal:

apt-get install mysql-server

Se le pedirá que establezca una contraseña para el usuario root de MySQL. Elija una contraseña segura y guárdela en un lugar seguro para futuras consultas.

El paquete del servidor MySQL se instalará en su servidor, junto con las dependencias y las bibliotecas del cliente. Después de instalar MySQL, se recomienda ejecutar mysql_secure_installation para ayudar a asegurar MySQL. Mientras ejecuta mysql_secure_installation , se le presentará la oportunidad de cambiar la contraseña raíz de MySQL, eliminar cuentas de usuario anónimo, deshabilitar inicios de sesión de raíz fuera de localhost y eliminar bases de datos de prueba. Se recomienda que responda afirmativamente a estas opciones. Si se le solicita que vuelva a cargar las tablas de privilegios, seleccione sí. Ejecute el siguiente comando para ejecutar el programa:

mysql_secure_installation

Después de ejecutar mysql_secure_installation , MySQL es seguro y está listo para configurarse.

Configuración de MySQL

De forma predeterminada, MySQL hace algunas suposiciones sobre el entorno de su servidor con respecto a la memoria. Para configurar MySQL de manera más conservadora, deberá editar algunas configuraciones en su archivo de configuración. Su archivo debe parecerse a lo siguiente:

Archivo:/ etc/mysql/my.cnf
1
2
3
4
5
6
key_buffer = 16M
max_allowed_packet = 1M
thread_stack = 64K
table_cache = 4
sort_buffer = 64K
net_buffer_length = 2K

Estas configuraciones son solo valores sugeridos para un entorno con poca memoria; no dude en ajustarlos a los valores apropiados para su servidor. Consulte la sección "Más información" al final de este tutorial para obtener recursos adicionales sobre este tema.

MySQL se vinculará a localhost (127.0.0.1) de forma predeterminada. Consulte nuestra guía de acceso remoto MySQL seguro para obtener información sobre cómo conectarse a sus bases de datos con clientes locales.

No se recomienda permitir el acceso sin restricciones a MySQL en una IP pública, pero puede cambiar la dirección en la que escucha modificando bind-address parámetro. Si decide vincular MySQL a su IP pública, debe implementar reglas de firewall que solo permitan conexiones desde direcciones IP específicas.

Usando MySQL

La herramienta estándar para interactuar con MySQL es mysql programa cliente. Para comenzar, emita el siguiente comando cuando se le solicite:

mysql -u root -p

Se le pedirá que ingrese la contraseña del usuario raíz de MySQL. Ingrese la contraseña que asignó cuando instaló MySQL y se le presentará la pantalla del monitor de MySQL:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 34
Server version: 5.1.41-3ubuntu12 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Si olvidó su contraseña raíz, use la herramienta de reconfiguración de paquetes para cambiar esa contraseña:

dpkg-reconfigure mysql-server-5.1

Para generar una lista de comandos para el indicador de MySQL, escriba \h :

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.
edit      (\e) Edit command with $EDITOR.
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.
nopager   (\n) Disable pager, print to stdout.
notee     (\t) Don't write into outfile.
pager     (\P) Set PAGER [to_pager]. Print the query results via PAGER.
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.
system    (\!) Execute a system shell command.
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.

For server side help, type 'help contents'

mysql>

Vamos a crear una base de datos y asignarle un usuario. Ejecute los siguientes comandos en el indicador de MySQL:

CREATE DATABASE testdb;
CREATE USER 'testuser'@localhost IDENTIFIED BY 'changeme';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@localhost;
exit

Ahora volvamos a iniciar sesión en el cliente MySQL como testuser y cree una tabla de muestra llamada "clientes". Ejecute los siguientes comandos:

mysql -u testuser -p

USE testdb;
CREATE TABLE customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);

Esto crea una tabla con un campo de ID de cliente del tipo INT para entero (incrementado automáticamente para nuevos registros y utilizado como clave principal), así como dos campos para almacenar el nombre del cliente.

De forma predeterminada, el acceso a las bases de datos estará limitado a conexiones desde localhost. Para administrar de forma segura sus bases de datos desde una ubicación remota, siga nuestra guía para administrar mysql de forma segura con un túnel SSH. No es no una buena práctica para ejecutar MySQL en su dirección IP pública, a menos que tenga una muy buena razón para hacerlo.

Más información

Es posible que desee consultar los siguientes recursos para obtener información adicional sobre este tema. Si bien estos se proporcionan con la esperanza de que sean útiles, tenga en cuenta que no podemos garantizar la precisión o la puntualidad de los materiales alojados externamente.

  • Manual de referencia de MySQL 5.1
  • Manual PHP MySQL
  • Ejemplos de Perl DBI para DBD::mysql
  • Guía del usuario de MySQLdb