安装配置mysql 8.0(含设置mysql为大小写不敏感)及远程访问设置

一、安装MySQL前的准备

首先确定你要安装在哪里: 远程服务器 or 本机电脑。如果你要安装在远程服务器上,就先登陆远程服务器;如果要安装在本机电脑上,直接打开终端;然后输入以下命令先查看是否已经安装过了mysql:

# 如果存在则可能返回:mysql-libs-5.1.73-5.el6_6.x86_64
rpm -qa | grep mysql

# 如果存在则可能返回:mariadb-libs-5.5.44-2.el7.centos.x86_64
rpm -qa|grep mariadb

如果两条命令都有返回,说明已经安装过mysql,如果不符合你的版本等需求,就需要先卸载再安装新的mysql。卸载mariadb-libs包:

# 删除 mariadb-libs 包
sudo yum remove mariadb-libs

mariadb-libs-5.5.68-1.el7.x86_64 是 MariaDB 的共享库文件包。MariaDB 是 MySQL 的一个分支版本,在一些 Linux 发行版(如 CentOS/RHEL)中作为默认的 MySQL 替代品预装。如果你打算安装官方的 MySQL,通常建议先删除这个包。【mysql的卸载暂不介绍】

以上完成后,开始进入安装环节:

二、下载MySQL包,输入以下命令(二选一即可):

  1. 推荐:使用官方rpm包直接安装
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm

优点: 官方推荐且自动完成所有配置

  1. 手动创建 repo 文件
sudo tee /etc/yum.repos.d/mysql-community.repo << EOF
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/\$basearch/
enabled=1
gpgcheck=1
gpgkey=http://repo.mysql.com/RPM-GPG-KEY-mysql
EOF

优点:

  • 过程透明,可以看到具体配置内容
  • 可以根据需要修改配置
  • 直接创建配置文件,不需要下载 rpm 包

缺点:

  • 可能会漏掉一些官方 rpm 包中包含的其他配置
  • 需要手动确保配置内容正确
  • 没有自动导入 GPG 密钥

三、安装MySQL 服务器

安装命令二选一:

sudo yum install mysql-community-server
  • 基本安装命令
  • 会提示确认安装
  • 会验证 GPG 签名
  • 使用默认启用的仓库
  • 更安全的做法

或者:

sudo yum -y install mysql-community-server --enablerepo=mysql80-community --nogpgcheck
  • -y:自动确认所有提示
    –enablerepo=mysql80-community:明确指定使用 mysql80 仓库
    –nogpgcheck:跳过 GPG 签名检查

  • 安装过程更快

  • 适合自动化脚本

  • 可以解决一些 GPG 密钥问题

  • 跳过安全验证

  • 不够安全

  • 看不到将要安装什么包

安装成功后运行以下命令,查看MySQL版本号 or 查看是否安装成功:

mysql -V

如果返回即表示安装成功,即可看到版本信息:

mysql Ver 8.xxxx for Linux on x86_64 (MySQL Community Server - GPL)

四、MySQL安全性配置

  1. 启动并设置开机自启动MySQL服务。
# 启动服务
sudo systemctl start mysqld

# 设置开机自启
sudo systemctl enable mysqld

# 检查服务状态
sudo systemctl status mysqld
  1. 获取root用户的临时密码。
sudo grep 'temporary password' /var/log/mysqld.log

返回:

2024-10-28T09:27:18.470008Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: [你的临时密码]
  1. 运行安全配置向导:
sudo mysql_secure_installation

该命令执行后,会弹出以下一系列问题,根据实际情况选择即可,或者都输入y 或者 Y,即选Yes就行:

  • 设置 root 密码(必须包含大小写字母、数字和特殊字符
  • 删除匿名用户
  • 禁止 root 远程登录
  • 删除测试数据库
  • 刷新权限表

五、远程访问MySQL数据库,即新建用户和密码:

  1. 登录mysql:
mysql -u root -p
  1. 依次运行以下命令,创建远程登录MySQL的账号,并允许远程主机使用该账号访问MySQL。
# 创建新用户并授权(用于远程连接)
CREATE USER 'your_username'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'your_username'@'%';
FLUSH PRIVILEGES;

# 如果需要修改密码策略(可选)
SET GLOBAL validate_password.policy=LOW;
SET GLOBAL validate_password.length=6;
  1. 修改配置文件(/etc/my.cnf):

如果有需要可以修改配置文件,否则,完成2后,输入exit退回mysql即可。

[mysqld]
# 字符集
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

# 默认存储引擎
default-storage-engine=INNODB

# 最大连接数
max_connections=1000

# 查询缓存大小
query_cache_size=64M

# InnoDB 缓冲池大小(根据服务器内存调整)
innodb_buffer_pool_size=1G

# 日志配置
slow_query_log=1
slow_query_log_file=/var/log/mysqld-slow.log
long_query_time=2

这里要强调关于设置数据库mysql大小写敏感的问题:

  • 最好在建库建表前就设置,如果不设置,默认是大小写敏感
  • 如果已有数据,改完配置后可能需要重新导入数据

如果需要设置,则在配置文件中加入这行:

# 设置大小写敏感:0 = 大小写敏感(区分大小写),1 = 大小写不敏感(不区分大小写),2 = 表名存储为给定的大小写但是以小写比较
lower_case_table_names=1

如果MySQL已经安装好了,才需要重新修改大小写敏感的问题,请看这篇文章:设置MySQL8.0为大小写不敏感

参考

在Linux实例中安装MySQL数据库(Linux实例的意思就是可以看做一个远程Linux服务器)

Linux安装MySQL通用方法,简单&详细

以及Claude.ai

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值