招聘织梦网站,网站开发原型模板,少女免费观看完整电视电影,oa软件有哪些公司#x1f60a; 作者#xff1a; Eric #x1f496; 主页#xff1a; https://blog.csdn.net/weixin_47316183?typeblog #x1f389; 主题#xff1a;CentOS7源码安装MySQL详细教程 ⏱️ 创作时间#xff1a; 2023年08月014日 文章目录 1、安装的四种方式2、源码安装… 作者 Eric 主页 https://blog.csdn.net/weixin_47316183?typeblog 主题CentOS7源码安装MySQL详细教程 ⏱️ 创作时间 2023年08月014日 文章目录 1、安装的四种方式2、源码安装MySQL详细步骤2.1、查看是否安装过MySQL2.2、卸载之前的MySQL可选2.3、安装MySQL1下载安装包2检查MySQL依赖4具体安装过程4服务的初始化5启动MySQL、查看状态7MySQL登录8修改密码 3、配置MySQL3.1、设置MySQL自启动3.2、设置允许远程连接 总结 1、安装的四种方式
安装方式特点rmp安装简单、灵活性差、无法灵活选择版本、升级rpm repository安装包极小版本安装简单灵活升级方便需要联网安装通用二进制包安装比较复杂灵活性高平台通用性好源码包安装最复杂时间长参数设置灵活性能好
那么我们这里选择 源码包 方式进行安装因为性能好同时设置参数灵活
2、源码安装MySQL详细步骤
2.1、查看是否安装过MySQL
1、如果你是用rpm安装, 检查一下RPM PACKAGE
rpm -qa | grep -i mysql 2、检查mysql service
systemctl status mysqld.service3、如果存在mysql-libs的旧版本包显示如下
如果不存在mysql-lib的版本显示如下
2.2、卸载之前的MySQL可选
1、关闭 mysql 服务
systemctl stop mysqld.service2、查看当前 mysql 安装状况
rpm -qa | grep -i mysql
# 或
yum list installed | grep mysql3、卸载上述命令查询出的已安装程序
yum remove mysql-xxx mysql-xxx mysql-xxx mysqk-xxxx务必卸载干净反复执行 rpm -qa | grep -i mysql 确认是否有卸载残留
4、删除 mysql 相关文件
# 查找相关文件
find / -name mysql# 删除上述命令查找出的相关文件
rm -rf xxx5、删除 my.cnf
rm -rf /etc/my.cnf2.3、安装MySQL
1下载安装包
下载地址官网https://www.mysql.com打开官网找到 DOWNLOADS 然后点击 MySQL Community Server
3.选择 Red Hat Enterprise Linux 4.下载的tar包用压缩工具打开 解压后rpm安装包 红框为抽取出来的安装包 解压后rpm安装包 红框为抽取出来的安装包 这里为了方便我直接把抽取好的npm包放在了网盘 链接https://pan.baidu.com/s/1RNppZcP_eaG0zDGDZMrIXQ?pwdEric 提取码Eric
2检查MySQL依赖
1、由于MySQL安装过程中会通过MySQL用户在/tmp目录下新建tmp_db文件所以请给/tmp较大的权限。执行
cd /opt/chmod -R 777 /tmp2、检查 libaio 依赖
rpm -qa|grep libaio如果存在libaio包如下 3、检查 net-tools 依赖
rpm -qa|grep net-tools如果存在 net-tools 包如下 如果不存在 net-tools 则需要安装
yum install -y net-tools4具体安装过程
1、将安装程序拷贝到/opt目录下
2、在mysql的安装文件目录下执行必须按照顺序执行
# 1、先切换到 opt目录
cd /opt# 2、开始按照顺序执行安装命令必须按照这个顺序执行
rpm -ivh mysql-community-common-8.0.25-1.el7.x86_64.rpmrpm -ivh mysql-community-client-plugins-8.0.25-1.el7.x86_64.rpmrpm -ivh mysql-community-libs-8.0.25-1.el7.x86_64.rpmrpm -ivh mysql-community-client-8.0.25-1.el7.x86_64.rpmrpm -ivh mysql-community-server-8.0.25-1.el7.x86_64.rpm可能报错1 一个命令yum remove mysql-libs 解决 可能报错2 一个命令yum install -y perl-Module-Install.noarch 解决 安装成功后查看MySQL版本 执行如下命令如果成功表示安装mysql成功。类似java -version如果打出版本等信息 mysql --version
# 或
mysqladmin --version执行如下命令查看是否安装成功。需要增加 -i 不用去区分大小写否则搜索不到。
rpm -qa | grep -i mysql4服务的初始化
为了保证数据库目录与文件的所有者为 mysql 登录用户如果你是以 root 身份运行 mysql 服务需要执行下面的命令初始化
mysqld --initialize --usermysql说明 --initialize 选项默认以“安全”模式来初始化则会为root用户生成一个密码并将 该密码标记为过期 登录后你需要设置一个新的密码。生成的 临时密码 会往日志中记录一份。
查看密码
cat /var/log/mysqld.logrootlocalhost: 后面就是初始化的密码 5启动MySQL、查看状态
#加不加.service后缀都可以
启动systemctl start mysqld.service关闭systemctl stop mysqld.service重启systemctl restart mysqld.service查看状态systemctl status mysqld.service也可以查看MySQL的进程
7MySQL登录
通过 mysql -hlocalhost -P3306 -uroot -p 进行登录在Enter password录入初始化密码
# 1、先查看密码
cat /var/log/mysqld.log# 2、登录MySQL
mysql -hlocalhost -P3306 -uroot -p 此时我们登录试试 登录成功~
8修改密码
因为初始化密码默认是过期的所以查看数据库会报错修改密码
ALTER USER rootlocalhost IDENTIFIED BY Hf$ypXW*xJ^rn0z;注意5.7版本之后不含5.7mysql加入了全新的密码安全机制。设置新密码太简单会报错。 改为更复杂的密码规则之后设置成功可以正常使用数据库了 3、配置MySQL
3.1、设置MySQL自启动
先查看MySQL是否自启动
systemctl list-unit-files | grep mysqld.service默认是enabled。也就代表是 自启动 如不是enabled可以运行如下命令设置自启动
systemctl enable mysqld.service如果不希望自启动运行如下命令设置
systemctl disable mysqld.service3.2、设置允许远程连接
1、在Linux系统MySQL下测试
use mysql;select Host,User from user;可以看到root用户的当前主机配置信息为localhost。
2、修改Host为通配符%
Host列指定了允许用户登录所使用的IP比如 userroot Host192.168.1.1。这里的意思就是说root用户只能通过192.168.1.1的客户端去访问。 userrootHostlocalhost表示只能通过本机客户端去访问。而 %是个 通配符如果Host192.168.1.%那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接。如果 Host%表示所有IP都有连接权限。注意在生产环境下不能为了省事将host设置为%这样做会存在安全问题具体的设置可以根据生产环境的IP进行设置。
update user set host % where user root;Host设置了“%”后便可以允许远程访问。 Host修改完成后记得执行flush privileges使配置立即生效
flush privileges;
如果是 MySQL5.7 版本接下来就可以使用SQLyog或者Navicat成功连接至MySQL了。
如果是 MySQL8.x 版本连接时还会出现如下问题
配置新连接报错错误号码 2058分析是 mysql 密码加密方法变了。
此时我们需要修改密码加密方式
ALTER USER root% IDENTIFIED WITH mysql_native_password BY Hf$ypXW*xJ^rn0z;效果如下 此时我们可以再次连接会发现还是连接失败这个错误就比较简单了我们只需要关闭防火墙或者开放MySQL端口即可在这里我把这两种方式都列出来大家任意选择就好 方式一关闭防火墙 # 开启防火墙
systemctl start firewalld.service# 查看防火墙状态
systemctl status firewalld.service# 关闭防火墙
systemctl stop firewalld.service#设置开机启用防火墙
systemctl enable firewalld.service#设置开机禁用防火墙
systemctl disable firewalld.service方式二开放端口 # 查看开放的端口号
firewall-cmd --list-all# 设置开放的端口号
firewall-cmd --add-servicehttp --permanent
firewall-cmd --add-port3306/tcp --permanent# 开放端口号后需要重启防火墙
firewall-cmd --reload我这里选择开放端口如果是云服务器需要去到控制台开放安全组端口 此时我们再次连接发现终于成功啦~ 总结
怎么样是不是特别的方便和简单~