通过rpm安装方式安装mysql
1.4 安装MySQL
1.4.1 MySQL安装
对于MySQL数据库的安装,我们将要使用前面讲解的第二种安装方式rpm进行安装。那么首先我们先了解一下什么rpm?
**RPM:**全称为 Red-Hat Package Manager,RPM软件包管理器,是红帽Linux用于管理和安装软件的工具。
我们要通过rpm,进行MySQL数据库的安装,主要的步骤如下:
1). 检测当前系统是否安装过MySQL相关数据库
需要通过rpm相关指令,来查询当前系统中是否存在已安装的mysql软件包,执行指令如下:
rpm -qa #查询当前系统中安装的所有软件
rpm -qa | grep mysql #查询当前系统中安装的名称带mysql的软件
rpm -qa | grep mariadb #查询当前系统中安装的名称带mariadb的软件
通过rpm -qa 查询到系统通过rpm安装的所有软件,太多了,不方便查看,所以我们可以通过管道符 | 配合着grep进行过滤查询。
通过查询,我们发现在当前系统中存在mariadb数据库,是CentOS7中自带的,而这个数据库和MySQL数据库是冲突的,所以要想保证MySQL成功安装,需要卸载mariadb数据库。
2). 卸载现有的MySQL数据库
在rpm中,卸载软件的语法为:
rpm -e --nodeps 软件名称
那么,我们就可以通过指令,卸载 mariadb,具体指令为:
我们看到执行完毕之后, 再次查询 mariadb,就查不到了,因为已经被成功卸载了。
3). 将资料中提供的MySQL安装包上传到Linux并解压
A. 上传MySQL安装包
在课程资料中,提供的有MySQL的安装包 ,我们需要将该安装包上传到Linux系统的根目录 / 下面。
资料地址:
链接:https://pan.baidu.com/s/1m1oCeJi35gXNZc2hOf9k-w?pwd=90zd
提取码:90zd
B. 解压到/usr/local/mysql
执行如下指令:
mkdir /usr/local/mysql
tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz -C /usr/local/mysql
4). 安装顺序安装rpm安装包
yum install -y net-tools perl libaio openssl gcc pcre-devel zlib-devel openssl vim openssl-develcd /usr/local/mysql/rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
说明:
- 因为rpm安装方式,是不会自动处理依赖关系的,需要我们自己处理,所以对于上面的rpm包的安装顺序不能随意修改。
- 安装过程中提示缺少net-tools依赖,使用yum安装(yum是一种在线安装方式,需要保证联网)
- 可以通过指令(yum update)升级现有软件及系统内核
1.4.2 MySQL启动
MySQL安装完成之后,会自动注册为系统的服务,服务名为mysqld。那么,我们就可以通过systemctl指令来查看mysql的状态、启动mysql、停止mysql。
systemctl start mysqld #启动mysql服务
systemctl status mysqld #查看mysql服务状态
systemctl stop mysqld #停止mysql服务
说明:
可以设置开机时启动mysql服务,避免每次开机启动mysql。执行如下指令:
systemctl enable mysqld
我们可以通过如下两种方式,来判定mysql是否启动:
netstat -tunlp 查看已经启动的服务
netstat -tunlp | grep mysql 查看mysql的服务信息ps –ef | grep mysql 查看mysql进程
备注:
A. netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。
参数说明:
-l或–listening:显示监控中的服务器的Socket;
-n或–numeric:直接使用ip地址,而不通过域名服务器;
-p或–programs:显示正在使用Socket的程序识别码和程序名称;
-t或–tcp:显示TCP传输协议的连线状况;
-u或–udp:显示UDP传输协议的连线状况; B. ps命令用于查看Linux中的进程数据。
1.4.3 MySQL登录
1.4.3.1 查阅临时密码
MySQL启动起来之后,我们就可以测试一下登录操作,但是我们要想登录MySQL,需要一个访问密码,而刚才在安装MySQL的过程中,并没有看到让我们设置访问密码,那这个访问密码是多少呢? 那实际上,对于rpm安装的mysql,在mysql第一次启动时,会自动帮我们生成root用户的访问密码,并且输出在mysql的日志文件 /var/log/mysqld.log中,我们可以查看这份日志文件,从而获取到访问密码。
可以执行如下指令:
1). cat /var/log/mysqld.log
这种方式,可以看到所有的日志数据,文件比较大时,很不方便查看数据。我们可以通过管道符 | 配合grep来对数据进行过滤。
2). cat /var/log/mysqld.log | grep password
我们可以通过上述指令,查询日志文件内容中包含password的行信息。
1.4.3.2 登录MySQL
获取到root用户的临时密码之后,我们就可以登录mysql数据库,修改root的密码,为root设置一个新的密码。并且我们还需要开启root用户远程访问该数据库的权限,这样的话,我们就可以在windows上来访问这台MySQL数据库。
执行如下指令:
①. 登录mysql(复制日志中的临时密码登录)mysql -uroot -p ②. 修改密码set global validate_password_length=4; 设置密码长度最低位数set global validate_password_policy=LOW; 设置密码安全等级低,便于密码修改成rootset password = password('root'); 设置密码为root③. 开启访问权限grant all on *.* to 'root'@'%' identified by 'root';flush privileges;
操作完上述的指令之后,数据库root用户的密码以及远程访问我们就配置好了,接下来,可以执行exit退出mysql,再次通过新的密码进行登录。
当然我们也可以使用安装在windows系统中的sqlyog或者Navicat来远程连接linux上的MySQL。
注意: 要想在windows上能够访问MySQL,还需要开放防火墙的3306端口,执行如下指令:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
1.4.3.3 修改默认编码
mysql默认编码为latin1
,进入mysql可以查询到。show global variables like "%char%";
我们需要将mysql的默认编码修改为utf8,编辑 /etc/my.cnf文件
在[client]下增加 default_character_set=utf8
在[mysql]下增加 default_character_set=utf8
在[mysqld]下增加 character_set_server=utf8
修改完文件后,重启mysql服务。
systemctl restart mysqld
/etc/my.cnf
完整配置文件如下:
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
[client]
default_character_set=utf8[mysql]
default_character_set=utf8[mysqld]
character_set_server=utf8
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
通过rpm安装方式安装mysql相关推荐
- CentOS7中基于rpm包方式安装部署apm(php module模块)+ xcache
CentOS 7, 基于rpm包方式安装部署apm(php module) : 要点: 一个虚拟主机提供phpMyAdmin,另一个虚拟主机提供wordpress: 1.配置环境: (1)关闭防火墙 ...
- CentOS 7.6 MySQL 8.0 RPM包方式安装及新特性介绍
一.MySQL 8.0新特性: 1.默认字符集由latin1变为utf8mb4 2.MyISAM系统表全部换成InnoDB表 3.自增主键AUTO_INCREMENT的值支持持久化 4.InnoDB表 ...
- mysql rpm 安装6_CentOS 7.6 MySQL 8.0 RPM包方式安装及新特性介绍
一.MySQL 8.0新特性: 1.默认字符集由latin1变为utf8mb4 2.MyISAM系统表全部换成InnoDB表 3.自增主键AUTO_INCREMENT的值支持持久化 4.InnoDB表 ...
- 腾讯云轻量应用服务器下使用RPM包方式安装GreatSQL单主环境
腾讯云轻量应用服务器下使用RPM方式安装GreatSQL数据库 今天主要介绍使用RPM包方式在腾讯云轻量应用服务器上安装部署GreatSQL数据库,服务器系统为CentOS 7.6并以root身份进行 ...
- centos php rpm包,CentOS 7 RPM包方式安装LAMP
细节要求: (1) 三者分离于两台主机: (2) 一个虚拟主机用于提供phpMyAdmin:另一个虚拟主机用于提供wordpress: (3) 提供xcache加速: (4) 为phpMyAdmin提 ...
- 安装jdk步骤rpm_jenkins rpm包方式安装
war包方式安装jenkins已经说过java openjdk的安装和注意事项,这里不做赘述 前提:确保 java的jdk或者jre已安装 #]java -version #]whereis java ...
- 系统安装部署系列教程(二):硬盘安装方式安装系统
前面介绍了制作U盘启动盘的方式来安装系统.假如手头暂时没有U盘,又有重装系统或者安装双系统的需求,那该怎么办呢?答案自然也是有的,这就是本文介绍的硬盘安装方式来安装系统. 准备工作 我们这次需要两个工 ...
- centos6/7 yum安装mysql客户端和rpm包方式安装方式
查看操作系统版本 cat /etc/redhat-release 这个命令就会查看该操作系统上是否已经安装了mysql数据 rpm -qa | grep mysql [root@larry ~]# r ...
- centos 6.5 rpm mysql_Linux平台(CentOS 6.5) RPM包方式安装 Mysql 5.7
在 Mysql 官网下载 RPM 的 bundle 包并解压. [root@localhost mysql5.7]# tar xvf mysql-5.7.12-1.el6.x86_64.rpm-bun ...
最新文章
- Powercli 批量获取vmhost 时间
- 《Linux内核设计与实现》读书笔记(十)- 内核同步方法【转】
- SQL-语句实现九九乘法表
- 大会剧透 | IDEA大会精彩议题全释放
- 安装ArcGISServer9.3流程(DotNet版本)
- java dumpheap_java程序性能分析之thread dump和heap dump
- RoI Pooling的学习笔记
- 经济管理中的计算机应用笔试题,经济管理中的计算机应用笔试试卷及答案资料.doc...
- OpenWrt分支LEDE嵌入式无线路由系统定制-1.编辑环境搭建
- 拓端tecdat:R语言梯度提升机 GBM、支持向量机SVM、正则判别分析RDA模型训练、参数调优化和性能比较可视化分析声纳数据
- (2016弱校联盟十一专场10.2) 	E.Coins
- 说明assert()的作用:assert()是一个调试程序时经常使用的宏,在程序执行时计算括号内的表达式,如果表达式为假,程序报告错误,并终止执行;若表达式为真,则继续执行后面的语句。
- 复变函数在计算机科学中的应用,051复变函数与实变函数
- Python 用异常处理改写猜数游戏程序
- c语言 ipv4转ipv6,环境配置:Ipv6转Ipv4
- matlab tic and toc,什么是Python等价于Matlab的tic和toc函数?
- win10亮度调节变为灰色无法调节
- kali下使用phpstudy
- 深入分析C#中的异步和多线程
- Python中List遍历的若干种方法