Linux以rpm方式安装Mysql,Centos7通过rpm安装Mysql5.5,Linux Mysql rpm安装

Linux以rpm方式安装Mysql,Centos7通过rpm安装Mysql5.5,Linux Mysql rpm安装

================================

©Copyright 蕃薯耀 2020-11-10

https://www.cnblogs.com/fanshuyao/

一、上传rpm包到Linux服务器,然后进入目录,接着安装

rpm -ivh MySQL-server-5.5.62-1.el7.x86_64.rpm 

出现了下面的错误:

[root@localhost java]# rpm -ivh MySQL-server-5.5.62-1.el7.x86_64.rpm
警告:MySQL-server-5.5.62-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
错误:依赖检测失败:
net-tools 被 MySQL-server-5.5.62-1.el7.x86_64 需要
perl(Data::Dumper) 被 MySQL-server-5.5.62-1.el7.x86_64 需要

这是缺少了net-tools

二、检查是否有这个包:

yum list|grep -i net-tools

[root@localhost java]# yum list|grep -i net-tools
net-tools.x86_64        2.0-0.25.20131004git.el7                base

三、安装net-tools

yum -y install net-tools.x86_64

或者

yum -y install net-tools

四、检查perl包:

yum list|grep -i perl

五、安装perl

yum install -y perl

但提示已经安装perl:

[root@localhost java]# yum install -y perl
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* extras: mirrors.163.com
* updates: mirrors.163.com
软件包 4:perl-5.16.3-295.el7.x86_64 已安装并且是最新版本
无须任何处理

其实需要安装的是autoconf

yum -y install autoconf

六、安装完成后即可安装MySQL-server-5.5.62-1.el7.x86_64.rpm

rpm -ivh MySQL-server-5.5.62-1.el7.x86_64.rpm 

七、接着安装client

rpm -ivh MySQL-client-5.5.62-1.el7.x86_64.rpm

八、启动mysql(这里的服务名是mysql,不是mysqld)

service mysql start

九、查看运行状态(此处的命令是:service mysql status,非service mysqld status)

service mysql status
或 systemctl status mysql

十、设置密码

/usr/bin/mysqladmin -u root password 'root'

十一、登录mysql

mysql -uroot -p

十二、设置远程连接权限

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

十三、退出mysql

quit;

十四、开放端口:

firewall-cmd --zone=public --add-port=3306/tcp --permanent

十五、让端口生效:

firewall-cmd --reload

十六、查看防火墙所有开放的端口

firewall-cmd --zone=public --list-ports

十七、rpm安装方式,默认是自启动的,查看状态:

chkconfig --list

 如下面所示(2、3、4、5为开):

[root@localhost ~]# chkconfig --list

注:该输出结果只显示 SysV 服务,并不包含
原生 systemd 服务。SysV 配置数据
可能被原生 systemd 配置覆盖。

      要列出 systemd 服务,请执行 'systemctl list-unit-files'。
      查看在具体 target 启用的服务请执行
      'systemctl list-dependencies [target]'。

mysql           0:关    1:关    2:开    3:开    4:开    5:开    6:关
netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
network         0:关    1:关    2:开    3:开    4:开    5:开    6:关
[root@localhost ~]#

十八、查看mysql的安装位置:

which mysql

[root@localhost my.cnf.d]# which mysql
/usr/bin/mysql

十九、在/etc/目录创建配置文件my.cnf(/etc/my.cnf:rpm安装没有这个文件的)(不能修改socket文件路径,不然会报错),具体配置如下:

vi /etc/my.cnf

配置如下:

[client]
port            = 3306
default-character-set =utf8mb4
#socket=/usr/local/mysql/mysql.sock


[mysqld]
# MySQL服务端默认监听的TCP/IP端口
port = 3306
# # 设置默认存储引擎为InnoDB
default-storage-engine=InnoDB
# MySQL服务端字符集
character-set-server=utf8mb4
# MySQL服务端字符集
collation_server = utf8mb4_general_ci
# 库名、表名是否区分大小写。默认为0,设置1,不区分大小写,创建的表、数据库都以小写形式存放磁盘。
lower_case_table_names=1
# MySQL软件安装路径
basedir=/usr
# MySQL数据文件存放路径
datadir=/var/lib/mysql
# 用于本地连接的Unix套接字文件存放路径
#socket=/usr/local/mysql/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log-bin=mysql-bin
binlog_format=mixed
server-id=3

[mysql]
no-auto-rehash
default-character-set=utf8mb4
#socket=/usr/local/mysql/mysql.sock

二十、重启mysql

service mysql restart

二十一、查看状态:

service mysql status
或 systemctl status mysql

二十二、主从复制相关配置

# =====主从复制 主库 开始=====
# 设置需要同步的数据库
binlog-do-db=rw_slave
#屏蔽系统库同步
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
binlog-ignore-db=test


# =====双主双从 开始 =====
# 两个主库互为从库
#不加下面的配置,存在某一个从库不会同步数据,只有2主库、1个从库同步
# 该从库是否写入二进制日志。如果需要成为多主则可启用。只读可以不需要
log-slave-updates=1
# 该服务器自增列的初始值。(与 Master2,...... MasterN 的不同点),如主1的值为1,则主2的值为2
auto-increment-offset=1
# 该服务器自增列增量。其默认值是1, 取值范围是1 .. 65535
auto-increment-increment=2
=====双主双从 结束=====

#=====主从复制 主库 结束=====


# =====主从复制 从库 开始=====
relay-log=mysql-relay
#设置需要同步的数据库
replicate_do_db=rw_slave
#屏蔽系统库同步
replicate_ignore_db=mysql
replicate_ignore_db=information_schema
replicate_ignore_db=performance_schema
replicate_ignore_db=test
# =====主从复制 从库 结束=====

查看防火墙状态:
firewall-cmd --state

关闭防火墙
systemctl stop firewalld.service

禁止防火墙开机启动
systemctl disable firewalld.service

================================

©Copyright 蕃薯耀 2020-11-10

https://www.cnblogs.com/fanshuyao/

今天越懒,明天要做的事越多。
原文地址:https://www.cnblogs.com/fanshuyao/p/13952159.html