CentOS安装MySQL8详细步骤
MySQL8安装详细步骤
**Centos安装Mysql8详细步骤
环境:CentOS7+MySQL8
**
rpm包安装
一、下载mysql rpm bundle包
注意:这里只是给一个安装思路,官网安装包的版本一直在更新,这里下载链接可能会失效。建议去官网下载自己想要的版本。
MySQL官网下载链接:https://dev.mysql.com/downloads/mysql/
复制下载连接下载
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.29-1.el8.x86_64.rpm-bundle.tar
二、解压rpm bundle包
tar xvf mysql-8.0.29-1.el8.x86_64.rpm-bundle.tar
建议查看并卸载mariadb
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs-*
三、安装mysql
注意:安装时注意下面的rpm包的名,如果版本一样可以直接复制安装
rpm -ivh mysql-community-common-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.29-1.el8.x86_64.rpm
四、查看用户和用户组是否有mysql,如果没有创建mysql组和用户并赋予权限
创建用户组和用户
#groupadd mysql
#useradd -r -g mysql mysql
五、初始化mysql并常看账户密码
初始化
mysqld --initialize --console
启动mysql服务查看初始密码
chown -R mysql:mysql /var/lib/mysql/
systemctl start mysqld
cat /var/log/mysqld.log | grep localhost
登陆mysql
mysql -uroot -p
六、修改mysql中root的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
#或者update user set password=password("123456") where user="root";
flush privileges;
其中‘new password’替换成你要设置的密码,注意:密码设置必须要大小写字母数字和特殊符号(,/';:等),不然不能配置成功。
如果出现如下错误:
是以为密码的复杂度不符合默认规定,如下命令查看mysql默认密码复杂度:
SHOW VARIABLES LIKE 'validate_password%';
#如果不能打开打印下面的图片就需要安装validate_password插件
INSTALL COMPONENT 'file://component_validate_password';
如需修改密码复杂度参考如下命令:
set global validate_password_policy=LOW;
set global validate_password_length=6;
七、开启mysql的远程访问
执行以下命令开启远程访问限制(注意:下面命令开启的IP是 192.168.19.128,如要开启所有的,用%代替IP):
create user root@'%' identified by 'admin123';
grant all privileges on *.* to root@'%' with grant option;
#或者update user set Host='%' where User='root';
flush privileges;
grant all privileges on *.* to 'root'@'%' identified by 'admin123' with grant option;
说明:任意的IP都可以登录mysql
grant all privileges on *.* to ‘root’@‘172.16.254.103’ identified by ‘root’ with grant option;
说明:只有IP为172.16.254.103的可以登录mysql
%代表任意可达的访问mysql数据库服务器客户端IP,可以根据实际情况修改为指定的客户端IP。
注:password–是你设置你的mysql远程登录密码。
Linux通用包安装(适用于其它Linux操作系统安装)
1、下载mysql包
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz
2.安装mysql
2.1 在/opt/mysql/mysql-8.0.30/下安装mysql文件
解压mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz到/opt/mysql并修改文件夹名mysql-8.0.30
#在opt创建mysql文件夹
mkdir -p /opt/mysql
#解压xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz到opt并重名
tar xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz -C /opt/mysql/
cd /opt/mysql/
mv mysql-8.0.30-linux-glibc2.12-x86_64 mysql-8.0.30
2.2创建用户组以及用户和密码
groupadd mysql
useradd -g mysql mysql
2.3在/opt/mysql/mysql-8.0.30/下 创建 data 数据存储目录 /opt/mysql/mysql-8.0.30/data
mkdir -p /opt/mysql/mysql-8.0.30/data
2.4授权用户 (如:下列配置my.cnf 时指定的目录都需给mysql 用户授权)
chown -R mysql.mysql /opt/mysql/mysql-8.0.30/
2.5在opt/mysql/mysql-8.0.30下执行
cd /opt/mysql/mysql-8.0.30/bin/
./mysqld --user=mysql --basedir=/opt/mysql/mysql-8.0.30 --datadir=/opt/mysql/mysql-8.0.30/data/ --initialize --lower-case-table-names=1
说明:
初始化基础信息 切记切记切记mysql8 一定要在初始化时设置 不区分大小写,不然后续修改和删除重装没区别
初始化后在原始my.con 下lower_case_table_names = 1 是无效的,所以一定要在初始化时加上 --lower-case-table-names=1
记下此处红色标记的密码,切记
2.6添加服务
cp -a ./support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
#添加服务
chkconfig --add mysql
ln -s /opt/mysql/mysql-8.0.30/bin/mysql /usr/bin
此处启动服务会报错
2.7新建文件 /etc/my.cnf (此处给出我的my.cnf)
cat >/etc/my.cnf <<EOF
[mysqld]
#设置mysql的安装目录
basedir=/opt/mysql/mysql-8.0.30/
#设置mysql数据库的数据的存放目录
datadir=/opt/mysql/mysql-8.0.30/data
# 设置客户端默认字符集
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 设置是否区分大小写(初始化后此参数在这里也必须存在)
lower_case_table_names=1
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
#注释mysqld_safe 下的所有配置 系统会输出到 datadir目录下
#[mysqld_safe]
#log-error=/var/log/mysqld.log
#pid-file=/var/run/mysqld/mysqld.pid
EOF
启动数据库服务
services mysql start
服务管理
service mysql start #服务启动
service mysql status #查看服务状态
service mysql stop #停止服务
service mysql restart #重启服务
服务启动成功
2.8 登录mysql 并修改密码
#进入mysql 控台
mysql mysql -uroot -p
#修改密码
alter user 'root'@'localhost' identified by '[密码]';
#刷新权限
flush privileges;
更多推荐