文章目录
一、下载要安装的版本
地址:https://downloads.mysql.com/archives/community/
二、开始安装
1.将下载好的安装包上传至服务器
我上传到了/usr/local/下
2.解压、重命名
tar -xvf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.38-linux-glibc2.12-x86_64/ mysql
3.在mysql根目录下创建data目录
创建data目录用于存放数据:
cd /usr/local/mysql/
mkdir data
4.创建mysql用户组和mysql用户
groupadd mysql
useradd -g mysql mysql
5.改变mysql目录权限
chown -R mysql.mysql /usr/local/mysql/
6.初始化数据库
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lower-case-table-names=1
执行完命令后,会生成如下图的密码:
7. 配置mysql
- 在mysql/support-files创建文件my-default.cnf
cd /usr/local/mysql/support-files/
touch my-default.cnf
- 复制配置文件到/etc/my.cnf
cp -a ./my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
- 编辑my.cnf
[client]
port=3306
socket=/tmp/mysql.sock
[mysqld]
port=3306
user=mysql
socket=/tmp/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
8.配置环境变量
- 编辑 / etc/profile 文件
#配置mysql环境变量
PATH=/data/mysql/bin:/data/mysql/lib:$PATH
export PATH
#让其生效
[root@csnode3101 ~]# source /etc/profile
#看环境变量是否生效
[root@csnode3101 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
9.启动mysql
启动方式有两种:
- 命令行启动
[root@csnode3101 bin]cd /usr/bin
[root@csnode3101 bin]./mysqld_safe &1
- 服务启动
service mysql start
安装问题记录
登录mysql报mysql: command not found
产生原因及解决方式:
因为/usr/local/bin目录下缺失mysql导致,只需要按以下方法建立软链接即可解决:
把mysql安装目录,比如MYSQLPATH/bin/mysql,映射到/usr/local/bin目录下:
# cd /usr/local/bin
# ln -fs /MYSQLPATH/bin/mysql mysql
客户端连接报错:is not allowed to connect to this mysql server
原因:mysql数据库只允许自身所在的本机器连接,不允许远程连接。
解决:
1.命令mysql -u root -p登录mysql
2.进入到mysql数据库中:
use mysql;
select host from user where user='root';
3.执行update语句把权限进行修改:
update user set host = '%' where user ='root';
4.刷新配置:
flush privileges;
修改密码
alter user '用户名'@'loaclhost' identified by '修改的密码';
记录:升级到8.0.32后,以上命令修改密码会报错,使用下面命令进行修改: ALTER USER USER() IDENTIFIED BY '新密码';