Instale mysql en linux usando la instalación de la versión glibc

1. Verifique antes de la instalación

1.1 Verifique la versión del sistema linux

[root @ localhost ~] # cat / etc / system-release

Nota: la versión de Xiaosheng es linux de 64 bits: CentOS Linux versión 7.4.1708 (Core)

1.2 Verifique si mysql está instalado

[root @ localhost ~] # rpm -qa | grep mysql

Si hay un archivo de instalación de mysql, se mostrará la información de la versión de la instalación de mysql

如 : conector-mysql-odbc-5.2.5-6.el7.x86_64

Desinstale el MySQL instalado, desinstale el comando mysql, de la siguiente manera:

[root @ localhost ~] # rpm -e --nodeps mysql-connector-odbc-5.2.5-6.el7.x86_64

Nota para detalles:
  Verifique si la base de datos mariadb existe en el sistema, si la hay, debe desinstalarse, de lo contrario podría entrar en conflicto con mysql.
  El modo de instalación del sistema es una instalación mínima, por lo que no existe tal base de datos.
  Compruebe si mariadb está instalado: [root @ localhost ~] # rpm -qa | grep mariadb
  Si es así, desinstálelo:
systemctl stop mariadb
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-5.5.52-1.el7. x86_64
rpm -e --nodeps mariadb-server-5.5.52-1.el7.x86_64
rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
  1.3 Comprobación de la memoria del sistema

Compruebe el tamaño de la memoria virtual del sistema Linux. Si la memoria es inferior a 1G, se puede generar el siguiente mensaje de error al iniciar mysql:

Iniciando mysqld (a través de systemctl): el trabajo para mysqld.service falló porque el proceso de control salió con un código de error.

Consulte "systemctl status mysqld.service" y "journalctl -xe" para obtener más detalles. [FAILED]

Cuando Xiaosheng lo instaló por primera vez, usó la partición automática de la máquina virtual y la memoria se configuró en 1G. Como resultado, dediqué mucha energía y tiempo a depurar esto, pero nunca se inició correctamente.

Después de instalar mysql a través de lnmp, se muestra mysql no se está ejecutando. El error es el siguiente:
  Iniciando MySQL ... El servidor se cierra sin actualizar el archivo PID (/usr/local/mysql/var/localhost.localdomain.pid)
Se encuentran varias soluciones en Internet, la mayoría de las cuales son permisos de archivo y mysql los registros son demasiado grandes y pesados ​​Instalación y otros problemas. Probé las soluciones una por una, pero
surgieron todas ... Finalmente, abrí el tutorial de instalación https://lnmp.org/install.html en el sitio web oficial de lnmp, y me di cuenta de que era porque la versión de mysql Elegí durante la instalación fue 5.6. Y la instalación de mysql versión 5.6 y superior requiere la memoria del servidor al menos 1G. Y lo instalé en el VPS. La memoria es de 256 MB, hay un problema si no hay ningún error. Instantáneamente con el corazón atascado.
Finalmente, desinstale lnmp primero y luego instálelo. La instalación puede consultar el tutorial oficial.

2. Descargue y cargue el paquete de instalación de mysql desde el sitio web oficial de mysql

2.1 Descarga el paquete de instalación de mysql

Xiaosheng usa mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

2.2 Cargue el archivo de instalación al sistema linux

Use ftp para cargar en el sistema linux, cárguelo en el directorio de archivos / var / ftp / pub

Inserte la descripción de la imagen aquí

Nota
  para más detalles: por cuestiones de seguridad, se recomienda utilizar el comando md5sum para verificar la fuente del archivo: [root @ localhost pub] # md5sum mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

1、下载tar包,这里使用wget从官网下载
 
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
 
2、将mysql安装到/usr/local/mysql下
 
# 解压
 
tar -xvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
 
# 移动
 
mv mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/
 
# 重命名
 
mv /usr/local/mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/mysql
 
3、新建data目录
 
mkdir /usr/local/mysql/data
 
4、新建mysql用户、mysql用户组
 
# mysql用户组
 
groupadd mysql
 
# mysql用户
 
useradd mysql -g mysql
 
5、将/usr/local/mysql的所有者及所属组改为mysql
 
chown -R mysql.mysql /usr/local/mysql
 
6、配置
 
/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
 
# 如果出现以下错误:
 
复制代码
2018-07-14 06:40:32 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2018-07-14 06:40:32 [ERROR]   Child process: /usr/local/mysql/bin/mysqldterminated prematurely with errno= 32
2018-07-14 06:40:32 [ERROR]   Failed to execute /usr/local/mysql/bin/mysqld --bootstrap --datadir=/usr/local/mysql/data --lc-messages-dir=/usr/local/mysql/share --lc-messages=en_US --basedir=/usr/local/mysql
-- server log begin --
 
-- server log end --
复制代码
# 则使用以下命令:
 
/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
# 如果出现以下错误:
 
/usr/local/mysql/bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
# 则执行以下命令:
 
yum -y install numactl
 
# 完成后继续安装:
 
/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
# 编辑/etc/my.cnf
 
复制代码
[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/tmp/mysql.sock
user=mysql
port=3306
character-set-server=utf8
# 取消密码验证
skip-grant-tables
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# skip-grant-tables
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
复制代码
7、开启服务
 
# 将mysql加入服务
 
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
 
# 开机自启
 
chkconfig mysql on
 
# 开启
 
service mysql start
 
8、设置密码
 
# 登录(由于/etc/my.cnf中设置了取消密码验证,所以此处密码任意)
 
/usr/local/mysql/bin/mysql -u root -p
 
# 操作mysql数据库
 
>>use mysql;
 
# 修改密码
 
>>update user set authentication_string=password('你的密码') where user='root';
 
>>flush privileges;
 
>>exit;
 
9、将/etc/my.cnf中的skip-grant-tables删除
 
10、登录再次设置密码(不知道为啥如果不再次设置密码就操作不了数据库了)
 
/usr/local/mysql/bin/mysql -u root -p
 
 >>ALTER USER 'root'@'localhost' IDENTIFIED BY '修改后的密码';
 
>>exit;
 
11、允许远程连接
 
/usr/local/mysql/bin/mysql -u root -p
 
>>use mysql;
 
>>update user set host='%' where user = 'root';
 
>>flush privileges;
 
>>eixt;
 
12、添加快捷方式
 
ln -s /usr/local/mysql/bin/mysql /usr/bin

Supongo que te gusta

Origin blog.csdn.net/qq_2662385590/article/details/112970564
Recomendado
Clasificación