05_Linux上安装Mysql5.7
1. 下载安装包
下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
使用wget命令下载
wget http://dev.MySQL.com/get/Downloads/MySQL-5.7/mysql-5.7.11-Linux-glibc2.5-x86_64.tar.gz
2. 解压
tar -zxvf /home/software/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
3. 移动到(/usr/local)、重命名为mysql
mv mysql-5.7.24-linux-glibc2.12-x86_64/ /usr/local/mysql
4. 创建mysql用户组、用户
groupadd mysql
useradd -r -g mysql mysql
5. 创建数据目录、修改目录权限
#创建目录 mkdir -p /data/mysql #赋予权限 chown mysql:mysql -R /data/mysql
6. 配置my.cnf
添加一下内容:
basedir = /usr/local/mysql datadir = /usr/local/mysql/data port = 3306 socket = /tmp/mysql.sock character-set-server = utf8
7. 初始化数据库
7.1 切换到mysql的执行目录
cd /usr/local/mysql/bin/
7.2 执行初始化命令
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
7.3 查看密码(从日志文件中查看)
cat /data/mysql/mysql.err
8. 移动mysql.server文件
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
9. 启动mysql
service mysql start
10. 启动成功
11. 启动失败 (ERROR! The server quit without updating PID file)
排查思路:这个错误可能有多种原因造成,思路1:查看/etc/my.cnf配置是否有误
思路2:去查看执行日志(/data/mysql/mysql.err)!!!
我部署时遇到后去查看了 /data/mysql/mysql.err,当时报的是下面的错误
我是这样解决的:将/tmp/mysql.sock.?删除
12. 配置mysql环境变量
12.1 vi /etc/profile
#java environment MYSQL_HOME=/usr/local/mysql #添加环境变量名称,指定安装路径 JAVA_HOME=/home/software/jdk1.8 HADOOP_HOME=/home/software/hadoop-3.1.3 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar #添加环境变量名称,注意格式 PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$MYSQL_HOME/bin export JAVA_HOME MYSQL_HOME PATH CLASSPATH HADOOP_HOME #添加环境变量名称
12.2 记得 source /etc/profile 才能生效
13. 登入数据库、修改密码、开发权限
13.1 登入数据库(使用7.3中的密码)
mysql -u root -p
13.2 修改密码
SET PASSWORD = PASSWORD('root'); ALTER USER 'root'@'127.0.0.1' PASSWORD EXPIRE NEVER; FLUSH PRIVILEGES;
13.3 设置远程连接权限
use mysql; update user set host = '%' where user = 'root'; FLUSH PRIVILEGES;
14. 远程连接时报错(10060)
解决:服务器没有开启端口或关闭防火墙
systemctl stop firewalld
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界