超详细安装步骤
- 下载方式
- 1.将下载的压缩包放到linux某个文件夹目录下
- 2.然后cd 切换到存放mysql的路径下
- 3.解压mysql文件到当前目录
- 4.等待解压完成就行了
- 5.重命名一下
- 6.创建mysql用户组和用户并修改权限
- 7.创建数据目录并赋予权限
- 8.配置my.cnf
- 9.初始化数据库
- 10.到这一步后,用navicat链接会发现无法连接
- 11.出现这个问题是因为host没有对完开放
- 12.到这一步就能正常连接了![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/b3263699ae69461397652f4d045de45e.png)
- 13.如果不希望每次都到bin目录下使用mysql命令则执行以下命令
下载方式
两种下载方式:
(1)百度网盘下载地址 : https://pan.baidu.com/s/1cx6sNNOEbQIo26z4sAb4Wg
提取码:hb57
(2)官网下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
1.将下载的压缩包放到linux某个文件夹目录下
这里我放到了/home/mysql5.7 目录下
2.然后cd 切换到存放mysql的路径下
cd /home/mysql5.7/
3.解压mysql文件到当前目录
tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
4.等待解压完成就行了
5.重命名一下
mv mysql-5.7.37-linux-glibc2.12-x86_64 /home/mysql5.7/mysql
6.创建mysql用户组和用户并修改权限
groupadd mysql useradd -r -g mysql mysql
7.创建数据目录并赋予权限
mkdir -p /home/mysql5.7/data #创建目录 chown mysql:mysql -R /home/mysql5.7/data/ #赋予权限
8.配置my.cnf
vim /etc/my.cnf
内容如下
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/home/mysql5.7/mysql
datadir=/home/mysql5.7/data
socket=/tmp/mysql.sock
log-error=/home/mysql5.7/data/mysql.err
pid-file=/home/mysql5.7/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
9.初始化数据库
9.1.进入mysql的bin目录
cd /home/mysql5.7/mysql/bin/
9.2.初始化mysql
./mysqld --defaults-file=/etc/my.cnf --basedir=/home/mysql5.7/mysql/ --datadir=/home/mysql5.7/data/ --user=mysql --initialize
9.3.查看密码
cat /home/mysql5.7/data/mysql.err
9.4.将mysql.server放置到/etc/init.d/mysql中
cp /home/mysql5.7/mysql/support-files/mysql.server /etc/init.d/mysql
9.5.启动myql
service mysql start
9.6.修改密码(必须先启动mysql才能修改)
首先登录mysql,前面的那个是随机生成的。在mysql的bin目录下执行
./mysql -u root -p #bin目录下
9.7.登录成功后
9.8.执行修改密码操作
SET PASSWORD = PASSWORD('123456'); #设置密码
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; #修改密码
FLUSH PRIVILEGES; #刷新mysql
9.8.1 修改密码是报错 1397
执行命令:
use mysql;
select user,host from user where user='root';
发现 host 列的值是 ‘%’,因此将修改密码语句改为:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
flush privileges;
10.到这一步后,用navicat链接会发现无法连接
11.出现这个问题是因为host没有对完开放
use mysql #访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
12.到这一步就能正常连接了![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/b3263699ae69461397652f4d045de45e.png)
13.如果不希望每次都到bin目录下使用mysql命令则执行以下命令
ln -s /home/local/mysql/bin/mysql /usr/bin