【Linux】安装Mysql(附加service mysql启动失败 提示unit not found 解决办法)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【Linux】安装Mysql(附加service mysql启动失败 提示unit not found 解决办法)

查看是否有mysql

whereis mysql
 find / -name mysql 

有的话

rm -rf (路径)删除

下载mysql包,我下的是mysql-5.7.26-linux-glibc2.12-x86_64

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

解压

tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 

移动

mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/

改名字

mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql-5.7.26

看看你们是否有用户和组

groupadd mysql
groupadd: group 'mysql' already exists

如果没有

useradd -r -g mysql mysql

创建目录

cd /
mkdir -p data
cd data/
mkdir -p mysql

赋予权限

chown mysql:mysql -R /data/mysql

修改配置文件

vim /etc/my.cnf

删除原来的配置粘贴下面的内容

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql-5.7.26
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0

按esc 后按住 shift+: 输入 wq

初始化mysql

cd /usr/local/mysql-5.7.26/bin/
 ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql-5.7.26/ --datadir=/data/mysql/ --user=mysql --initialize

查看初始化密码

vim /data/mysql/mysql.err

记得保存密码啊

查看mysql是否启动

ps -ef|grep mysql

如果没有

service mysqld start

可以更改密码,也可以不修改

cd /usr/local/mysql-5.7.26/bin
mysql -u root -p

service mysql启动失败 提示unit not found 解决办法

查看是否有mysql服务

ll /etc/init.d/ | grep mysql

如果上面没有继续执行

find / -name mysql.server

然后复制

[root@iz2zeii2ibu8vy8dafd06xz mysql-5.7.26]# cp /usr/local/mysql-5.7.26/support-files/mysql.server /etc/init.d/mysql

然后启动服务

[root@iz2zeii2ibu8vy8dafd06xz mysql-5.7.26]# service mysql start
Starting MySQL.                                            [  OK  ]

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

查找mysql.sock文件

find / -name mysql.sock

验证目录是否正确

mysql -u root -p -S /tmp/mysql.sock(find找到的目录)

如果输入密码登录成功的话,就是配置文件的sock路径配置错误

修改配置

./my.conf

[mysqld]
protocol=tcp
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql-5.7.26
datadir=/data/mysql 
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
#character_set_server=utf8mb4
#symbolic-links=0

    
    
[client]
port=3306
socket=/tmp/mysql.sock

如果还是报错,而且find / -name mysql.sock找不到,那就重新启动mysql

/etc/init.d/mysql restart

报错

ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

解决方案:

selinux惹的祸,如果是centos系统,默认会开启selinux

解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。

Starting MySQL.2020-02-01T03:50:03.121792Z mysqld_safe error: log-error set to ‘/var/log/mariadb/mariadb.log’, however file don’t exists. Create writable for user ‘mysql’.The server quit without updating PID file (/data/mysql/mysq[FAILED]

解决方案

 mkdir /var/log/mariadb
 touch /var/log/mariadb/mariadb.log
 chown -R mysql:mysql  /var/log/mariadb/
service mysql start

成功

重启

/etc/init.d/mysql restart

确定是否启动成功

/etc/init.d/mysql restart

bash: mysql: 未找到命令…

[root@localhost bin]# mysql -u root -p

bash: mysql: 未找到命令…

修改执行文件

vim /etc/profile

修改配置

export PATH=$PATH:/usr/local/mysql/bin
(注意这里要添加你自己的安装目录)

重启配置文件

source /etc/profile

登录

[root@localhost local]# mysql -uroot -p

成功

rpm 安装client和server包一直报错

我把如下包上传linux之后,使用

rpm -ivh 包名

一直各种报错,后来才知道,包是32位的,系统是64位的

略显尴尬。。。

mysql如何配置开机自启

查看是否开机自启

[root@localhost ~]# chkconfig --list mysql

发现并没有

添加开机自启

[root@localhost ~]# chkconfig --level 345 mysql on

查看是否成功

[root@localhost ~]# chkconfig --list mysql

reboot测试

OK

接下来开始套娃

如何使用navicate连接mysql

https://blog.csdn.net/yujing1314/article/details/92803406

用navicate连接mysql 报错

https://blog.csdn.net/yujing1314/article/details/104141281

windwos 安装MySQL5.7教程

https://blog.csdn.net/yujing1314/article/details/90034322

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7天前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
23 3
|
7天前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
21 3
|
17天前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
63 3
|
1月前
|
Ubuntu 关系型数据库 MySQL
Linux系统MySQL安装
【10月更文挑战第19天】本文介绍了在 Linux 系统上安装 MySQL 的步骤,包括安装前准备、安装 MySQL、启动 MySQL 服务、配置 MySQL 以及验证安装。适用于 Ubuntu/Debian 和 CentOS/Fedora 系统,提供了详细的命令示例。
149 1
|
1月前
|
SQL 关系型数据库 MySQL
MySQL异常一之: You can‘t specify target table for update in FROM clause解决办法
这篇文章介绍了如何解决MySQL中“不能在FROM子句中指定更新的目标表”(You can't specify target table for update in FROM clause)的错误,提供了错误描述、需求说明、错误做法和正确的SQL写法。
356 0
|
1月前
|
关系型数据库 MySQL Linux
Navicat 连接 Windows、Linux系统下的MySQL 各种错误,修改密码。
使用Navicat连接Windows和Linux系统下的MySQL时可能遇到的四种错误及其解决方法,包括错误代码2003、1045和2013,以及如何修改MySQL密码。
196 0
|
8天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
23 4
|
6天前
|
SQL 关系型数据库 MySQL
12 PHP配置数据库MySQL
路老师分享了PHP操作MySQL数据库的方法,包括安装并连接MySQL服务器、选择数据库、执行SQL语句(如插入、更新、删除和查询),以及将结果集返回到数组。通过具体示例代码,详细介绍了每一步的操作流程,帮助读者快速入门PHP与MySQL的交互。
19 1
|
1月前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
61 3
Mysql(4)—数据库索引
|
15天前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
81 1