1、此处是在MySQL官网获取的rpm包(也可直接在linux中使用yum获取这个rpm包到本地)
在MySQL官方网站的最底下找到这个
此处选择的MySQL版本5.7.44,操作系统选Oracle Linux,OS版本选择linux 7下载
将下载好的二进制文件包上传到centos7中在windows系统中上传文件到虚拟机里面,可使用Xftp工具上传
mysql官方文档中有说明需要libaio库(如果centos7里面没有libaio库的话,使用下面命令安装libaio库,也可以使用此命令自检有没有这个库)
yum install libaio
此处使用的centos系统,会预装一个mariadb数据库,这个数据库会跟mysql有冲突,需卸载
# 使用以下两个命令检查是否已经存在这两个数据库,如果存在,则卸载
rpm -qa | grep mariadb
rpm -qa | grep mysql
# 卸载命令,如果出现依赖冲突,卸载不成功,则再后面追加 --nodeps 这个忽略依赖检查,强制卸载
rpm -e [此处粘贴上面查看到的数据库名,将出现的红色部分全部复制粘贴到此处] [--nodeps]
解压mysql的rpm包并安装mysql(此处的rpm包是放在opt/software目录底下的,这个目录是自建的)
tar -xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar -C /opt/software/mysql5
#这里为了方便把rpm包解压到了mysql5这个自建的目录底下了
解压后的mysql包的各个部分
解压完后,依次执行命令安装mysql的rpm包
#加 --nodeps 是忽略出现的依赖问题,强制安装
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm --nodeps
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm --nodeps
rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm --nodeps
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm --nodeps
rpm -ivh mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm --nodeps
————————————————
执行一下命令启动mysql服务
对于 Red Hat Enterprise Linux、Oracle Linux、CentOS 和 Fedora 系统,使用以下命令启动 MySQL
# 启动mysql服务
service mysqld start
# 查看启动状态
service mysqld status
对于 SLES 系统,命令相同,但服务名称为 不同
# 启动mysql服务
service mysql start
# 查看启动状态
service mysql status
此图片为启动成功截图(重点看绿色标识地方
)
自定义密码
第一次启动mysql服务,需要修改MySQL root用户的登录密码,此处为了方便将其密码修改成123456
获取root用户的临时登录密码,进入MySQL客户端,临时密码默认路径是在mysql的错误日志文件中
# 使用此命令可直接查看到临时密码
grep 'temporary password' /var/log/mysqld.log
冒号后面的就是临时密码,复制粘贴,进入mysql客户端需要这个临时密码,输入密码都是隐藏的,粘贴好就直接进入,没进入就多试几次(如图是进入后的界面)
因为mysql默认的密码修改策略是要求密码至少包含一个大写字母、一个小写字母、一个数字和一个特殊字符,以及总密码 长度至少为 8 个字符。为了设置一个简单方便的登录密码123456
# 修改密码安全策略为低
set global validate_password_policy = low;
# 修改密码长度为六位
set global validate_password_length = 6;
# 修改root用户的密码--- 修改密码这个要注意需要重新登录
提示信息是:Ignoring query to other database。根据错误可以,知道,是忽略了对其他表的查询。
折腾了半天才发现原来是在连接mysql时没有"-u"参数导致的。
重新使用命令:
mysql -uroot -P;
然后再修改密码
alter user 'root'@'localhost' identified by '123456';
设置mysql的远程连接
进入mysql的客户端,查看root用户的访问权限
select user,host from mysql.user;
# 设置root的host为 %
update mysql.user set host= '%' where user= 'root';
# 设置好后刷新权限
flush privileges;
MYSQL常用命令
# 直接登陆mysql
mysql -u用户名 -p密码 数据库名
# 例如:
mysql -uroot -p123456 mysql
# 先登陆后面再输入密码和选择数据库
mysql -u root -p
Enter password: “root用户密码”
mysql> use mysql # 选择要操作的数据库
# 切换数据库
use 数据库名;
# 查看所有数据库
show databases;
# 查看登陆数据库中所有的表
show tables;
# 查看数据表结构
desc 表名;
# 查看登陆用户名
select user();
# 查看登陆数据库库名
select database();
# 查看版本
select version();
# 显示当前时间
select now();
# 查看所有用户的 用户名、可登陆主机、身份验证插件、密码
select user,host,plugin,authentication_string from user;
# 查看当前登录用户权限
show grants;
# 查看任意用户权限(后面说权限的具体含义)
show grants for root@localhost;