解压
tar -xvf mysql-8.0.25-linux-glibc2.12-x86_64.tar.xz
移动文件夹
mv mysql-8.0.25-linux-glibc2.12-x86_64 /home/mysql-8.0.25
创建数据目录
1.创建文件夹
mkdir -p /data/mysqldata/
2 创建数据库用户 后边文件配置及初始化会用到, 如果你自己有其他用户也可以不创建新的
#2.1创建用户组
groupadd mysql
#2.2创建用户
useradd -r -g mysql mysql
#赋权限
2. chown mysql:mysql -R /data/mysqldata #chown 用户名:用户组 -R /data/mysqldata
3. chmod 750 /data/mysqldata/ -R
配置环境
vim /etc/profile
#如果你的系统不支持vim命令 使用下边这个
vi /etc/profile
#编辑,在文档最后一行 添加下边代码
export PATH=$PATH:你的MySQL解压路径/mysql-8.0.25/bin:你的MySQL解压路径/mysql-8.0.25/lib
编辑my.cnf
[mysql]
客户端默认字符集
default-character-set=utf8mb4
[client]
port=3306
socket=/var/lib/mysql/mysql.sock
[mysqld]
port=3306
server-id=3306
user=mysql
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
设置mysql的安装目录
basedir=/home/mysql-8.0.25 #你自己的安装路径
设置mysql数据库的数据的存放目录
datadir=/data/mysqldata/mysql #你自己创建的数据库文件存放路径
log-bin=/data/mysqldata/mysql/mysql-bin
innodb_data_home_dir=/data/mysqldata/mysql
innodb_log_group_home_dir=/data/mysqldata/mysql
character-set-server=utf8mb4
lower_case_table_names=1
autocommit=1
symbolic-links=0
[mysqld_safe]
#设置mysql数据库的日志及进程数据的存放目录
log-error=/data/mysqldata/mysql/mysql.log
pid-file=/data/mysqldata/mysql/mysql.pid
初始化MySQL
- cd /home/mysql-8.0.25/bin/
- ./mysqld --defaults-file=/etc/my.cnf --basedir=/home/mysql-8.0.25/ --datadir=/data/mysqldata/mysql --user=mysql --initialize
#参数详解
--defaults-file=/etc/my.cnf 指定配置文件(一定要放在最前面,至少 --initialize 前面)
--user=mysql 指定用户(很关键)
--basedir=/home/mysql-8.0.25/ 指定安装目录
--datadir=/data/mysqldata/mysql/ 指定初始化数据目录
启动MySQL
1.复制 mysql.server 文件
cp /home/mysql-8.0.25/support-files/mysql.server /etc/init.d/mysql
cp /home/mysql-8.0.25/support-files/mysql.server /etc/init.d/mysqld
2.赋予权限
chown 777 /etc/my.cnf
chmod +x /etc/init.d/mysql
chmod +x /etc/init.d/mysqld
3.检查一下/var/lib/mysql是否存在,否进行创建
mkdir /var/lib/mysql #目录和my.cnf保持一致
4.赋予权限
chown -R mysql:mysql /var/lib/mysql/ #目录和my.cnf保持一致
5.启动数据库
service mysql start #或者 systemctl mysql start
修改密码
#修改root密码 修改root用户只能本地连接
ALTER USER 'root'@'localhost' IDENTIFIED with mysql_native_password BY '新密码';
#刷新权限
flush privileges;
创建用户
#创建用户任意远程访问
CREATE user 'mysql'@'%';
#修改密码
alter user 'mysql'@'%' identified with mysql_native_password by '新密码';
授权
#将test库的所有权限赋予mysql用户
grant all privileges on test.* to "mysql"@"%";
#刷新权限
flush privileges;
扩展(MySQL开机自启动)
#1.查看是否有mysql服务
chkconfig --list
#2.进入mysql软件目录,复制mysql.server文件到 /etc/rc.d/init.d目录下
cp /home/mysql-8.0.25/support-files/mysql.server /etc/rc.d/init.d/mysql
#3.给/etc/rc.d/init.d/mysql赋权可执行权限
chmod +x /etc/rc.d/init.d/mysql
#4.添加mysql服务
chkconfig --add mysql
#5.使mysql服务开机自启
chkconfig --level 345 mysql on
#6.查看MySQL服务 ,重启服务器,测试是否成功。
chkconfig --list
问题1
详细报错如下:/usr/sbin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决方法:yum install -y libaio
问题2
详细报错如下:mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
解决方法:sudo ln -s /usr/lib64/libtinfo.so.6.1 /usr/lib64/libtinfo.so.5