网站建设中最基本的决策,光大国际建设公司官网,学做网站论坛vip共享,宁夏自治区公路建设管理局网站【Linux服务器Java环境搭建】01购买云服务器以及在服务器中安装Linux系统 【Linux服务器Java环境搭建】02 通过xftp和xshell远程连接云服务器 【Linux服务器Java环境搭建】03 Git工具安装 【Linux服务器Java环境搭建】04 JDK安装#xff08;JAVA环境安装#xff09; 【Linux服…【Linux服务器Java环境搭建】01购买云服务器以及在服务器中安装Linux系统 【Linux服务器Java环境搭建】02 通过xftp和xshell远程连接云服务器 【Linux服务器Java环境搭建】03 Git工具安装 【Linux服务器Java环境搭建】04 JDK安装JAVA环境安装 【Linux服务器Java环境搭建】05 Node JS安装及环境变量配置 【Linux服务器Java环境搭建】06 maven项⽬构建和管理⼯具安装 待续… 【Linux服务器Java环境搭建】附录01判断Linux服务器是X64还是arm架构的方式 【Linux服务器Java环境搭建】附录02压缩格式tar.gz和tar.xz的区别
一、安装前准备
检查是否安装过mysql
通过如下命令来检查,如果结果为空代表没有安装过
[rootyisu-655382d078761 ~]# rpm -qa | grep -i mysql #-i 忽略大小写
[rootyisu-655382d078761 ~]# 工具准备
CentOS7 系统链接CentOS系统的工具如Xshell和Xftp
二、下载MySql 下载地址https://www.mysql.com/downloads/ 点击MySQL Community (GPL) Downloads 点击MySQL Community Server 选择MySQL版本以及操作系统 说明由于没有CentOS 7系统的版本所以选择与之对应的 Red Hat Enterprise Linux mysql-8.2.0-1.el7.x86_64.rpm-bundle.tar 下载系统所支持的安装包 注意安装包名称中包含glibc版本和系统架构X64或arm 安装包名称mysql-8.2.0-1.el7.x86_64.rpm-bundle.tar glibc版本2.17 通过命令ldd --version查看对应版本 系统架构X64 请参考判断Linux服务器是X64还是arm架构的方式 centos7:el7 下载如果不想登录直接点击No thanks, just start my download.
三、通过xftp上传到Linux服务器
将安装包通过xftp上传到服务器目录/root/lzh/
四、解压MySql安装包
将上⾯准备好的 MySQL 安装包解压到 /opt/mysql目录
在opt目录下创建mysql文件夹
在opt目录下执行如下命令
[rootyisu-655382d078761 opt]# mkdir mysql解压命令
通过如下命令将安装包解压到目录/opt/mysql,注意一定要在opt目录下执行
[rootyisu-655382d078761 opt]# tar -xvf /lzh/mysql-8.2.0-1.el7.x86_64.rpm-bundle.tar -C mysql五、检查依赖
检查/tmp临时目录权限必不可少 由于mysql安装过程中会通过mysql用户在/tmp目录下新建tmp_db文件所以请给/tmp较大的权限 执行如下命令
[rootyisu-655382d078761 lzh]# chmod -R 777 /tmp2. 检查libaio依赖通过命令rpm -qa|grep libaio,如果能看到相关信息则代表已经安装
[rootyisu-655382d078761 lzh]# rpm -qa|grep libaio
libaio-devel-0.3.109-13.el7.x86_64
libaio-0.3.109-13.el7.x86_64
[rootyisu-655382d078761 lzh]# 如果没有安装请执行命令yum install libaio来进行安装。 3. 检查net-tools包通过命令rpm -qa|grep net-tools如果能看到相关信息则代表已经安装
[rootyisu-655382d078761 lzh]# rpm -qa|grep net-tools
net-tools-2.0-0.22.20131004git.el7.x86_64
[rootyisu-655382d078761 lzh]# 如果没有安装请执行命令yum install net-tools来进行安装。
六、安装mysql
在目录/opt/mysql/目录下按照顺序执行如下命令
[rootyisu-655382d078761 mysql]# rpm -ivh mysql-community-common-8.2.0-1.el7.x86_64.rpm
[rootyisu-655382d078761 mysql]# rpm -ivh mysql-community-client-plugins-8.2.0-1.el7.x86_64.rpm
[rootyisu-655382d078761 mysql]# rpm -ivh mysql-community-libs-8.2.0-1.el7.x86_64.rpm
[rootyisu-655382d078761 mysql]# rpm -ivh mysql-community-client-8.2.0-1.el7.x86_64.rpm
[rootyisu-655382d078761 mysql]# rpm -ivh mysql-community-icu-data-files-8.2.0-1.el7.x86_64.rpm
[rootyisu-655382d078761 mysql]# rpm -ivh mysql-community-server-8.2.0-1.el7.x86_64.rpm 注意
当执行rpm -ivh mysql-community-libs-8.2.0-1.el7.x86_64.rpm 报错如下 [rootyisu-655382d078761 mysql]# rpm -ivh mysql-community-libs-8.2.0-1.el7.x86_64.rpm warning: mysql-community-libs-8.2.0-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY error: Failed dependencies: mariadb-libs is obsoleted by mysql-community-libs-8.2.0-1.el7.x86_64 解决方案执行命令[rootyisu-655382d078761 mysql]# yum remove mysql-libs
当执行rpm -ivh mysql-community-server-8.2.0-1.el7.x86_64.rpm 报错如下 [rootyisu-655382d078761 mysql]# rpm -ivh mysql-community-server-8.2.0-1.el7.x86_64.rpm 错误依赖检测失败 /usr/bin/perl 被 mysql-community-server-8.0.26-1.el7.x86_64 需要 net-tools 被 mysql-community-server-8.0.26-1.el7.x86_64 需要 perl(Getopt::Long) 被 mysql-community-server-8.0.26-1.el7.x86_64 需要 perl(strict) 被 mysql-community-server-8.0.26-1.el7.x86_64 需要 解决方案执行如下命令
yum install net-tools
yum install -y perl-Module-Install.noarch如下为完整安装截图
七、查看mysql版本
通过如下命令查看mysql版本如果能看到版本号则代表mysql安装成功
[rootyisu-655382d078761 mysql]# mysql --version
mysql Ver 8.2.0 for Linux on x86_64 (MySQL Community Server - GPL)
[rootyisu-655382d078761 mysql]# mysqladmin --version
mysqladmin Ver 8.2.0 for Linux on x86_64 (MySQL Community Server - GPL)
[rootyisu-655382d078761 mysql]# 通过如下命令查看MySQL相关组件,如下
[rootyisu-655382d078761 mysql]# rpm -qa|grep -i mysql
mysql-community-client-8.2.0-1.el7.x86_64
mysql-community-icu-data-files-8.2.0-1.el7.x86_64
mysql-community-common-8.2.0-1.el7.x86_64
mysql-community-libs-8.2.0-1.el7.x86_64
mysql-community-server-8.2.0-1.el7.x86_64
mysql-community-client-plugins-8.2.0-1.el7.x86_64八、初始化
如果要以root身份运行mysql服务需要执行如下初始化命令
[rootyisu-655382d078761 mysql]# mysqld --initialize --usermysql注意 –initialize选项以“安全模式”来初始化会为root用户生成一个临时密码一定要记住会在第一次登录时需要设置一个新的密码临时密码可以通过如下命令查看
[rootyisu-655382d078761 mysql]# cat /var/log/mysqld.log 具体内容如下,rootlocalhost后面的信息为临时密码
[rootyisu-655382d078761 mysql]# cat /var/log/mysqld.log
2023-12-05T13:33:49.637740Z 0 [System] [MY-015017] [Server] MySQL Server Initialization - start.
2023-12-05T13:33:49.642320Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.2.0) initializing of server in progress as process 72382
2023-12-05T13:33:49.658952Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-12-05T13:33:50.377497Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-12-05T13:33:51.978492Z 6 [Note] [MY-010454] [Server] A temporary password is generated for rootlocalhost: rghBNVX?90F4
2023-12-05T13:33:55.838593Z 0 [System] [MY-015018] [Server] MySQL Server Initialization - end.九、启动mysql服务、查看状态
注意加不加.service后缀都可以 mysqld 这个可执行文件代表 mysql服务器程序运行这个可执行文件后可以直接启动一个 服务器进程。
命令说明systemctl status mysqld.service查看状态systemctl start mysqld.service启动服务systemctl stop mysqld.service停止服务systemctl restart mysqld.service重启服务ps -ef|grep -i mysql查看mysql进程systemctl disable mysqld.service设置为不自启动systemctl enable mysqld.service设置为自启动
启动服务后的状态 关闭服务后的状态 查看mysql进程
十、设置mysql服务为自启动
查看mysql服务是否自启动(默认为enabled自启动) systemctl list-unit-files | grep mysqld.service如果不希望自启动可以通过如下命令设置为不自启动
systemctl disable mysqld.service如果不是自启动可以通过如下命令设置为自启动
systemctl enable mysqld.service十一、mysql登录、修改密码
首次登录 通过命令mysql -uroot -p进行登录在Enter password: 录入初始化密码输入密码后可以进入mysql(进入mysql后可以通过exit退出mysql) 修改密码 注意因为初始化密码默认是过期的所以查看数据库会报错需要进行密码的修改 执行如下命令进行密码修改
mysql alter user rootlocalhost identified by 123456;执行结果如下图
退出mysql
十二、设置允许远程登录
注意修改密码尝试登录时发现登录不了可以通过如下步骤进行排查
1、在要远程的机器上ping Linux服务器的ip
ping ip地址
2、通过telnet ip:3306查看端口是否开放 发现端口无法连接那么需要开启端口或是关闭防火墙
3、关闭和开启防火墙
有关防火墙相关命令
命令说明systemctl status firewalld.service查看防火墙状态yum install firewalld firewall-config安装防火墙systemctl start firewalld.service开启防火墙systemctl stop firewalld关闭防火墙systemctl enable firewalld设置开机启动防火墙systemctl disable firewalld设置开机禁用防火墙firewall-cmd --reload重启防火墙
未开启防火墙 防火墙开启后状态
4、开放端口号
端口号相关命令
命令说明firewall-cmd --list-all查看开放的端口号firewall-cmd --add-servicehttp --permanent设置开放的端口号firewall-cmd --add-port3306/tcp --permanent设置开放的端口号firewall-cmd --reload重启防火墙
没有开启任何端口号 设置开放的端口号 重启防火墙以及再次查看端口号 如果是云服务器请在云服务防火墙中开放3306端口
修改完端口以及防火墙后telnet后发现还是不行那么咱们再继续下一步骤
5、设置用户root允许远程访问的IP
查看root用户权限
在Linux系统中登录mysql进入mysql执行如下sql语句可以看到root用户的当前主机配置信息为localhost
use mysql;
SELECT Host, User FROM mysql.user;如上图Host列列出了允许用户登录所使用的IP其中userroot Hostlocalhost表示只能通过本机客户端去访问;同理Userroot Host192.168.1.1指的是说root用户只能通过192.168.1.1的客户端去远程访问mysql可以使用%通配符如果Host192.168.1.%那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接如果 Host% 表示所有IP都有连接权限;
设置root用户权限
通过如下命令设置用户root的请求权限此处设置为%代表所有IP都有链接权限
update mysql.user set host% where userroot; 注意Host修改完成后一定要执行flush privileges;使配置生效
十三、通过mysql客户端工具进行远程连接
撒花测试链接成功
【最后】总结 从安装、配置、最终链接整体看来还是有点儿小复杂在Linux系统中安装mysql的方式其实有多种后期也会把其他的方式进行演示一遍好了今天就到这里如有错漏请大家随时指出.