Para alojar un servidor MySQL en Linux seguiremos los pasos mencionados a continuación:
- Configure un servidor Linux para alojar este MySQL.
- Obtenga nuestros Usuarios configurados en MySQL.
- Escriba algo de código de Python e intente conectarse a ese servidor.
Lo primero que necesitamos es un servidor Linux y para eso estamos usando Linode :
1. Abra Lincode y haga clic en Crear y luego en Lincode.
2. Ahora complete los detalles como se muestra a continuación:
images : Ubuntu 19.04 Linode Plan : Ninode 1 GB Lincode Label : mysql-server Reset Password : your_password
3. Ahora haga clic en Crear , una vez creada, su pantalla se ve como se muestra a continuación:
4. Ahora vamos a descargar un programa llamado PuTTY que nos permitirá acceder a nuestro servidor mediante SSH. Una vez que Putty se haya instalado, ábralo y pegue la dirección IP de su servidor Linux como se muestra:
5. Haga clic en Abrir , si ve una advertencia, simplemente presione Ok ,
6. Ahora escriba route como inicio de sesión y la contraseña será la contraseña raíz que creamos y luego presione enter.
7. Una vez hecho esto, ahora podemos comenzar a instalar el servidor MySQL, por lo que lo primero que haremos será instalar MySQL y ejecutar algunos otros comandos que se detallan a continuación:
sudo apt-get install mysql-server
8. Escriba sí cuando se le pregunte. Ahora que hemos instalado MySQL con éxito en el servidor, ahora configuraremos algunas cosas que permiten el acceso remoto porque, de forma predeterminada, MySQL es localhost, lo que significa que solo puede conectarse localmente desde el servidor y eso está bien en la mayoría de los casos porque a veces ejecutaremos como un servidor MySQL en la misma máquina que un sitio web y, en ese caso, solo necesita acceso localhost porque está en la misma máquina, por lo que puede modificar la base de datos directamente desde el sitio web, pero en nuestro caso, necesitamos un control remoto, por lo que ejecutaremos algunos otros comandos y abriremos una ventana de utilidad de comandos para MySQL que nos permitirá modificar algunos problemas de seguridad.
sudo mysql_secure_installation utility
9. Ahora nos hará algunas preguntas aquí, como validar el complemento de contraseña, que se puede usar para probar contraseñas y mejorar la seguridad, queremos que sea seguro, así que vamos a escribir Y para validar nuestra contraseña. , así que ahora ingresaremos cuál podría ser la fuerza mínima de una contraseña para que podamos iniciar sesión, por lo que en nuestro caso ingresaremos 0 como bajo porque solo queremos hacer una contraseña básica para esto, pero puede hacerlo fuerte ., eso significa que cada vez que cree un nuevo usuario, debe tener una contraseña segura, ahora le pedirá una contraseña de root antes que nuestro servidor MySQL, recomendaré usar una contraseña segura porque esta contraseña se usará para iniciar sesión como un Administre parte de MySQL y modifique los permisos establecidos para que no quiera que nadie entre accidentalmente aquí. Una vez que escriba su contraseña, mostrará la seguridad estimada de la contraseña , escriba Y para sí, ahora dice eliminar usuarios anónimos, presionamos Y.
Ahora dice que a root solo se le debe permitir conectarse desde localhost , esto asegura que alguien no pueda adivinar la contraseña de root desde la red, por lo que también presionaremos sí, esto significa que no hay forma de que pueda iniciar sesión en el servidor MySQL como el servidor raíz a menos que realmente esté en mi máquina. Luego dice eliminar la base de datos de prueba y acceder a ella, le daremos sí, ahora dice volver a cargar las tablas de privilegios ahora , presione sí.
10. Ahora estamos listos para entrar y realmente crear un usuario y realmente crear un usuario y cambiar algunas cosas para que esto pueda ser visto por cualquier máquina. Ahora tenemos que configurar un firewall básico en nuestra máquina. Para hacer esto, ejecute el siguiente comando:
sudo ufw enable
11. Ejecute el comando mencionado a continuación ahora, le permite a MySQL eludir este firewall y ver otras conexiones.
sudo ufw allow mysql
12. Ahora trabajaremos en la configuración de MySQL, que es el enlace del servidor ahora para obtener acceso a este archivo. Ejecute los siguientes comandos:
cd /etc/mysql/mysql.conf.d
13. Ahora usaremos nano para modificar el archivo específico, ahora el archivo que necesitamos será:
nano mysqld.cnf
14. Después de escribir el comando anterior, verá algo como esto.
15. Ahora mueva el cursor a la dirección de enlace con la tecla de flecha hacia abajo, su valor predeterminado es 127.0.0.1 , lo que significa que en realidad está vinculado al host local, lo que significa que solo el host local, que es la máquina real, puede acceder al servidor. obviamente no queremos compilar para acceder a eso desde fuera de esto, por lo que cambiaremos esto a 0.0.0.0 , lo que significa que cualquier cosa puede acceder a este servidor, por lo que se vincula a él esencialmente con cualquier dirección IP que tenga el servidor, lo que significa que podemos acceder desde cualquier otro lugar. Ahora guarde esto con CTRL+S y luego salga con CTRL+X .
16. Ahora simplemente configuraremos un usuario que realmente podamos usar para acceder a la base de datos, configuraremos una base de datos básica y luego nos conectaremos desde nuestro código Python. Ahora también queremos asegurarnos de que nuestro servidor MySQL siempre se esté ejecutando en el servidor, ya sea que lo apaguemos o lo reiniciemos. Ahora el comando para hacer esto es:
sudo systemctl start mysql sudo systemctl enable mysql sudo systemctl restart mysql
17. Ahora iremos a la configuración de MySQL y comenzaremos a modificar algunas cosas, así que para hacer esto, ejecute el siguiente comando:
mysql -u root -p
18. Ingrese la contraseña que configuramos en la utilidad. Ahora podemos escribir nuestras consultas SQL. Primero, crearemos una base de datos.
CREATE DATABASE test;
GRANT ALL ON test.* TO username@[Your IP Address] IDENTIFIED BY "PASSWORD";
GRANT ALL ON test.* otorgará todos los permisos a todas las tablas en la base de datos test. Ahora cree un archivo de Python llamado connect.py :
Python3
# code import mysql.connector from datetime import date import datetime db = mysql.connector.connect( host="172.105.24.35", # linode IP Address user="divyansh", # username passwd="StrongPassword1234*", database="test", ) mycursor = db.cursor() mycursor.execute("SHOW TABLES") print(mycursor.fetchone())
Y eso es todo, ahora puede conectarse a MySQL usando este archivo python.