Linux 使用rpm创建 mysql8

不羁岁月 提交于 2020-03-16 21:48:44

数据库包下载:https://pan.baidu.com/s/1U1x_HSiLBzlcR6HLTRoF8g 
提取码:b5vt

下载后上传到服务器下,我放的目录是/usr/local

安装mysql步骤:

清理环境

centos7会自带一个mariadb

查看是否已安装

rpm -qa |grep -i mysql

rpm -qa |grep -i mariadb(centos7默认系统自带的)

mariadb是从mysql来的,是它的一个分支,需要清理掉

清理掉mariadb包

用yum直接安装你的话,用的mariadb的yum源,它跟mysql官方正式版不太一样,我们要安装官方正式版,就需要清掉mariadb,然后手动安装自己下载的官方正式版mysql

rpm -e 加上包名,把mariadb包清掉

可以看到用rpm删除会失败,提示有依赖关系的软件需要安装

rpm -e mariadb-libs-5.5.64-1.el7.x86_64

rpm删除时如果有依赖关系,可以用yum remove + 包名来删除mariadb

解压上传的 mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar

tar -xvf  mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar

开始安装:

一般用装软件用yum直接安装也可以,但是有一个问题:用yum的话,是到默认的mariadb用的yum源去找,可能会找不到,所以我们自己来安装

 

rpm –ivh + 包安装所需要的包

 rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm

rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm

rpm -ivh mysql-community-libs-compat-8.0.16-2.el7.x86_64.rpm

rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm

rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm

现在MySQL已经安装完成

默认配置文件路径: 
配置文件:/etc/my.cnf 
日志文件:/var/log/var/log/mysqld.log 
服务启动脚本:/usr/lib/systemd/system/mysqld.service 
socket文件:/var/run/mysqld/mysqld.pid

 rpm -qa | grep -i mysql 查看mysql是否安装成功,看到mysql相关最近代表安装成功

ps -ef | grep mysql 查看是否有mysql进程

启动服务 systemctl start mysqld.service

ps -ef | grep mysql 查看mysql服务是否启动

MySQL启动后会给root生成一个随机的初始密码

通过 grep "password" /var/log/mysqld.log获取随机密码

 

登录数据库:

 mysql -u root -p 敲回车

然后输入随机密码 敲回车

登录后会提示一下信息:如连接线程id、版本什么的

在使用前要设置一个自己的密码,就算不设置也会要求设置的

show databases; 查看数据库有哪些库

密码规则:大写字母+小写字母 + 数字 + 特殊符号的组合,否则会报错,如下

修改密码:

alter user 'root'@'localhost' identified by 'Aliwang!123';

再运行 show databases;

创建用户:CREATE USER '用户名'@'%' IDENTIFIED BY '密码'; 

授权:GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'%' WITH GRANT OPTION;

执行 flush privileges;命令立即生效

 

如果要设置root用户远程可以访问,如下设置:


使用mysql 数据库: use mysql;


 

特定用户的host 修改:update user set host='%' where user='root';


 

指定用户的授权 grant all privileges on mysql.* to root@'%';

执行 flush privileges;命令立即生效

至此,整个mysql配置完成

 

mysql会自带一些系统库:

information_schema存一些统计数据

performance_schema存一些状态数据,

mysql存的数据用于监控、权限、账号等

test是测试库,用于做测试用的

 

如果重新安装,数据目录没变的话,那么之前的库还是存在的

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!