Centos如何安装Mysql

1、安装前检查是否存在mysql

bash 复制代码
yum list installed mysql*

①如或显示了列表,说明系统中有MySQL

**yum卸载 ** 根据列表上的名字([中括号为可选项])

bash 复制代码
yum remove [填写列表显示出来的所有内容]
rm -rf /var/lib/mysql  
rm /etc/my.cnf

②rpm查看安装

bash 复制代码
 rpm -qa | grep  mysql
bash 复制代码
rpm -e [列表筛选出来的依次卸载]
cd /var/lib/  
rm -rf mysql/

③清除余项

bash 复制代码
whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/local/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
#删除上面所有的文件夹
rm -rf /usr/bin/mysql

删除配置

bash 复制代码
rm -rf /etc/my.cnf

2、开始安装mysql

首先,尝试一下直接使用 yum 安装 MySQL

bash 复制代码
yum install mysql-community-server

如果成功,表示不需要配置MySQL rpm 源信息,直接就安装完成了

但是,如果出现以下错误:

表示我们没有添加安装包的源信息,需要安装 MySQL rpm 源信息

安装 MySQL rpm 源信息

MySQL :: Download MySQL Yum Repository

bash 复制代码
wget  http://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm
rpm -ivh mysql80-community-release-el7-11.noarch.rpm

安装

再尝试使用 yum 安装MySQL

bash 复制代码
yum install mysql-community-server

安装过程中,会提示让我们确认,一律输入**y**按回车即可

安装完成后,yum会自动覆盖自带的mariaDB,所以不需要我们手动卸载它

④检查安装是否成功

检查一下刚才的安装是否成功

bash 复制代码
rpm -qa | grep mysql

输出:

mysql-community-common-8.0.35-1.el7.x86_64

mysql-community-server-8.0.35-1.el7.x86_64

mysql-community-libs-8.0.35-1.el7.x86_64

mysql-community-client-8.0.35-1.el7.x86_64

mysql80-community-release-el7-11.noarch

mysql-community-icu-data-files-8.0.35-1.el7.x86_64

mysql-community-client-plugins-8.0.35-1.el7.x86_64

输出类似以上内容,表示安装完成

⑤检查mariaDB是否被覆盖

bash 复制代码
rpm -qa | grep mariadb

输出空,表示 mariaDB 已经被成功覆盖。

3、修改配置文件my.cnf,复制下面这个即可,端口:3308

sql 复制代码
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#
# 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
#绑定ipv4
bind-address=0.0.0.0
#默认3306端口,如需修改端口,设置端口
port=3308
#设置字符集为UTF8
character-set-server=utf8
#设置传输包限制,默认1M
max_allowed_packet=32M
#设置最大连接数
max_connections=500
#设置缓冲池大小:
innodb_buffer_pool_size=2048M
#设置密码验证默认加密方式
default-authentication-plugin=mysql_native_password
#设置不区分大小写
lower_case_table_names=1
#设置隔离级别
transaction-isolation=read-committed
#设置时区
default-time-zone='+8:00'

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

4、启动mysql

第一次启动后,可以查看mysql初始化密码

bash 复制代码
grep 'temporary password' /var/log/mysqld.log

获取最后的密钥:

登录mysql

sql 复制代码
mysql -u root -p -P 3308

然后输出刚才得到的密钥:

修改 root 密码

注意了,默认的密码策略,需要:大写英文 + 特殊字符 + 数字

sql 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root_123';

5、开放 root 账户远程登录

sql 复制代码
#退出mysql
exit

# 登录
mysql -u root -p'密码'

# 如果你的数据库是 mysql 8 及以上
# 1、进入数据库
use mysql
# 2、修改user表
update user set host='%' where user='root';

# mysql 5.7 及之前,执行这行代码即可
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

# 重载授权表
FLUSH PRIVILEGES;

# 退出
exit

# 重启
systemctl restart mysqld

6、远程Navicat连接测试一下

相关推荐
Irene19913 小时前
SQL示例:分别使用 MySQL 和 Oracle 创建表,MySQL 插入数据建索引(自增主键、指定主键的区别,VARCHAR,VARCHAR2)
mysql·oracle
用户4217632814074 小时前
如何用java实现一个简单的并发版本控制MVCC
mysql
想唱rap4 小时前
传输层协议TCP
linux·运维·服务器·网络·c++·tcp/ip
阿维的博客日记4 小时前
求解深分页问题,last pk适合什么情况
java·mysql·深分页
曦夜日长4 小时前
Linux系统篇,权限(二):缺省权限、最终权限的计算、文件隔离的两种方式
linux·运维·服务器
__water4 小时前
【下载配置Mysql】
mysql
云水一下5 小时前
黑客的“猜密码”游戏:SSH暴力破解实战与Linux安全加固
linux·渗透测试·ssh·暴力破解
kebidaixu5 小时前
OK3568开发板更新Ubuntu22.04方法总结
linux·运维·服务器
晚风予卿云月5 小时前
【Linux】Linux2.6 O(1)调度器超详解 | 进程切换+内核链表 | 面试必背
linux·运维·面试
www.026 小时前
Linux 终端守护神 Tmux :如何优雅地管理后台实验与恢复会话
linux·运维·服务器·人工智能·tmux