麒麟V10 x86系统安装mysql

一. 下载并解压tar包

通过下面网址下载 ,注意需要登录oracle网站后,才能下载。

https://dev.mysql.com/downloads/mysql/

mkdir -p /root/mysql

tar -xvf mysql-8.0.45-1.el8.x86_64.rpm-bundle.tar -C /root/mysql

二. 安装部署包

注意,要按下面的顺序安装,不然会出错。

安装顺序:common->(client-plugins)->libs->client->(icu-data-files)->server

rpm -ivh mysql-community-common-8.0.45-1.el8.x86_64.rpm

rpm -ivh mysql-community-client-plugins-8.0.45-1.el8.x86_64.rpm

rpm -ivh mysql-community-libs-8.0.45-1.el8.x86_64.rpm

rpm -ivh mysql-community-client-8.0.45-1.el8.x86_64.rpm

rpm -ivh mysql-community-icu-data-files-8.0.45-1.el8.x86_64.rpm

rpm -ivh mysql-community-server-8.0.45-1.el8.x86_64.rpm

说明:

-i: ---install。 安装软件包

-v: -verbose。 提供更多的详细信息输出

-h: -hash。 软件包安装的时候列出hash标记,展示进度条

如下显示,安装完成:

mysql --version

三. 解决mysql表名大小写敏感的问题

1、停止MySQL systemctl stop mysqld

2、删除数据目录,即删除 /var/lib/mysql 目录
rm -rf /var/lib/mysql

3、在MySQL配置文件( /etc/my.cnf )中添加
lower_case_table_names=1

4、启动 MySQL systemctl start mysqld

四. 修改数据库密码

1.查看默认生成的密码

cat /var/log/mysqld.log | grep password

2.用临时密码登录mysql

mysql -uroot -p'?kwtGt2CIg1&'

  1. 修改root账号密码。密码为:my@Passwrod

ALTER USER 'root'@'localhost' IDENTIFIED BY 'my@Passwrod';

4.更新数据库

FLUSH PRIVILEGES;

  1. 退出数据库,用新密码登录mysql

exit;

mysql -uroott -p'my@Passwrod'

五. 设置远程

  1. 切换数据库到mysql

use mysql;

  1. 查看user表中的用户

select host,user,authentication_string from user;

3.授权root远程登录

update user set host='%' where user ='root';

4.刷新权限

flush privileges;

  1. 退出mysql环境,并重启mysqle服务。

exit;

systemctl restart mysqld

六. 设置开机自启动

1.查看开机是否能自启动

systemctl list-unit-files |grep mysqld

  1. 设置开机自动启动

systemctl enable mysqld

3.设置开机不自动启动

systemctl disable msyqld

七.修改数据存放位置

  1. 停止mysql服务

systemctl stop mysqld

  1. 新建数据存放目录,注意其目录的访问权限
复制代码
# 创建新目录(示例:/data/mysql)
sudo mkdir -p /data/mysql
# 设置正确的所有者
sudo chown -R mysql:mysql /data/mysql
# 设置权限
sudo chmod 750 /data/mysql
  1. 修改配置文件,[mysqld][client] 两处的socket路径必须保持一致!
复制代码
vim /etc/my.cnf
复制代码
[mysqld]
datadir=/data/mysql
socket=/data/mysql/mysql.sock

[client]
socket=/data/mysql/mysql.sock

4.**处理SELinux,**麒麟系统关键

复制代码
# 检查SELinux状态
getenforce

如果返回 Enforcing,执行以下命令,如是 Disabled, 此此可省。

bash

复制代码
# 安装管理工具(如果没有)
sudo yum install -y policycoreutils-python-utils

# 为新目录设置正确的SELinux上下文
sudo semanage fcontext -a -t mysqld_db_t "/data/mysql(/.*)?"
sudo restorecon -Rv /data/mysql
  1. 初始化数据库(非常重要!)

因为目录是空的,MySQL需要重新初始化系统表:

sudo mysqld --initialize --user=mysql --datadir=/data/mysql

如果上面命令报错,尝试

sudo mysqld --initialize-insecure --user=mysql --datadir=/data/mysql

初始化完成后,重启mysql服务。

systemctl restart mysqld

  1. 按前面第四点,查临时密码,登录mysql后,再重置数据库密码

cat /var/log/mysqld.log | grep password

mysql -uroot -p'e_!TUws_r3g;'

ALTER USER 'root'@'localhost' IDENTIFIED BY 'my@Passwrod';

FLUSH PRIVILEGES;

7.验证

复制代码
# 查看数据目录
ls -la /data/mysql
# 应该能看到 auto.cnf, ib_buffer_pool, ibdata1, mysql, performance_schema 等文件和目录

# 查看进程
ps aux | grep mysql
# 应该能看到 mysqld 进程,且 datadir 指向 /data/mysql

# 查看端口
sudo netstat -tulnp | grep 3306
相关推荐
Linux-lucky22 分钟前
36-Linux学习之旅之MySQL主从复制
linux·运维·学习·mysql·ubuntu
APItesterCris1 小时前
告别人工盯品!借助 Open‑Claw 快速搭建电商商品全自动监控与数据分析系统(完整实操代码)
java·大数据·前端·数据库
SKH.1 小时前
网络(5)数据库
jvm·数据库
kyrie_sakura1 小时前
MySQL数据库学习笔记3--关联(联合)查询
数据库·学习·mysql
陈皮波比茶2 小时前
计算机二级MySQL笔记
java·数据库
行业研究员2 小时前
腾讯云数据库 PostgreSQL 让相关子查询跑上多核
数据库·postgresql·腾讯云
zzzll11112 小时前
LangChain 1.3 新特性详解与实战指南
java·数据库·langchain
石小千2 小时前
MySQL 8.4设置密码策略
数据库·mysql
神明不懂浪漫2 小时前
【第四章】索引——B+树、回表,加快数据库的查找能力的利器
开发语言·数据结构·数据库·经验分享·笔记·b树