1. 创建software目录,目录可以自定义
mkdir /usr/local/softwar
2. 进入目录software,获取安装包文件
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz
3. 解压文件
tar -vxf mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz
4. 移动解压目录至/usr/local下
mv mysql-8.0.32-linux-glibc2.12-x86_64 /usr/local/mysql-8.0
5. 进入mysql-8.0目录,新建data目录,存储db数据
cd /usr/local/mysql-8.0
mkdir data
6. 创建mysql用户组及用户和密码
groupadd mysql
useradd -g mysql mysql
7. 给创建用户授权
chown -R mysql.mysql /usr/local/mysql-8.0
chmod 750 /usr/local/mysql-8.0/data -R
8. 配置mysql环境,编辑/etc/profile文件
vim /etc/profile
#在profile文件最后一行加上如下配置
export PATH=$PATH:/usr/local/mysql-8.0/bin:/usr/local/mysql-8.0/lib
9. 修改完成后,刷新配置文件
source /etc/profile
10. 编辑my.cnf文件
vim /etc/my.cnf
11. my.cnf文件补充如下内容
[mysql]
default-character-set=utf8
[client]
socket=/var/lib/mysql/mysql.sock
[mysqld]
port=3306
user=mysql
general_log = 1
general_log_file= /var/log/mysql/mysql.log
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql-8.0
datadir=/usr/local/mysql-8.0/data
log-bin=/usr/local/mysql-8.0/data/mysql-bin
innodb_data_home_dir=/usr/local/mysql-8.0/data
innodb_log_group_home_dir=/usr/local/mysql-8.0/data/
character-set-server=utf8mb4
lower_case_table_names=1
autocommit=1
default_authentication_plugin=mysql_native_password
symbolic-links=0
[mysqld_safe]
log-error=/usr/local/mysql-8.0/data/mysql.log
pid-file=/usr/local/mysql-8.0/data/mysql.pid
12. 切换到/usr/local/mysql/mysql-8.0/bin目录下--并安装 libaio 环境
cd /usr/local/mysql/mysql-8.0/bin
yum install -y libaio
13. 初始化基础信息,得到数据库的初始密码(在/usr/local/mysql/mysql-8.0/bin目录下执行)
cd /usr/local/mysql-8.0/bin/
./mysqld --user=mysql --basedir=/usr/local/mysql-8.0 --datadir=/usr/local/mysql-8.0/data/ --initialize
如果出现上面报错,删掉data目录,然后重新执行上面语句
cd /usr/local/mysql-8.0
rm -rf data
mkdir data
cd /usr/local/mysql-8.0/bin/
./mysqld --user=mysql --basedir=/usr/local/mysql-8.0 --datadir=/usr/local/mysql-8.0/data/ --initialize
如上所示,我们最终获取初始密码:ueXuidN,a5Qi
14. 将mysqld服务添加到系统中--赋予权限
cd /usr/local/mysql-8.0
cp -a ./support-files/mysql.server /etc/init.d/mysql
chown 777 /etc/my.cnf
chmod +x /etc/init.d/mysql
chkconfig --add mysql
15. 检查一下/var/lib/mysql是否存在,否则进行创建 --- 可以不需要
mkdir /var/lib/mysql
然后再赋予权限 --- 可以不需要
chown -R mysql:mysql /var/lib/mysql/
16. 启动数据库,有SUCCESS字眼说明MySQL安装完成
service mysql start
当我们输入 mysql -uroot -p 命令时,可能会报如下错误:
先进入数据库的对应解压缩文件并找到该执行命令文件的对应目录,找到该命令依赖的库文件
cd /usr/local/mysql/bin/ #先进入该命令的对应目录
ldd mysql #查看依赖库文件
#从本地找到完整的库文件拷贝到该主机 ,进入数据库,输入刚才的初始密码:ueXuidN,a5Qi
当我们进入数据库时,首先会要求重置密码
alter user 'root'@'localhost' identified by 'newPassword'; #newPassword 新的密码
flush privileges; # 刷新权限
此时我们只能本地连接,远程是无法访问的,需要修改为可以远程连接才可以
update user set host='%' where user='root';
flush privileges; # 刷新权限
17. 创建db用户hunter
create user 'hunter'@'%';
alter user 'hunter'@'%' identified with mysql_native_password by 'newPassword'; #对hunter用户设置密码
18. 创建新的数据库实例
create database my_test default character set utf8mb4 collate utf8mb4_unicode_ci;
# 把新的数据库授权给新用户,将my_test库的所有权限赋予hunter用户
grant all privileges on my_test.* to "hunter"@"%";
# 刷新权限
flush privileges;