银河麒麟系统安装mysql5.7【亲测可行】

一、安装环境

cpu:I5-10代;

主板:华硕;

OS:银河麒麟V10(SP1)未激活

架构:Linux 5.10.0-9-generic x86_64 GNU/Linux

mysql版本:mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz

安装包存放:/data/download

安装目录:/usr/local/mysql

数据目录:/data/mysql

二、安装步骤

1、修改系统root密码

我安装的麒麟系统开机登录默认子用户,不是root用户,权限小,很多文件都是只读,所以切换到root用户,下面是root用户修改密码的方法。

① 开机按e进入编辑页面
② 修改配置文件如下

将ro改为rw,将security的值改为none,后面加上 init=/bin/bash


注意:开机小心狂按e会导致文件开头多出很多e字母,记得删掉;

③ 按F10保存退出,然后输入以下命令设置密码
bash 复制代码
passwd root

输入两次密码后,输入exec /sbin/init进行重启即可;

2、下载自己电脑对应版本mysql安装包

下载地址:mysql官网

上传至电脑,我的存放在/data/download目录下;

3、安装mysql

切换root用户(需输入刚才设置的root密码):

bash 复制代码
su

进入mysql安装包目录,解压:

bash 复制代码
cd /data/download

tar -zxf ./mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz

移动并重命名:

bash 复制代码
mv mysql-5.7.34-linux-glibc2.12-x86_64 /usr/local/mysql

创建mysql用户组和用户、数据目录并修改权限:

bash 复制代码
groupadd mysql
useradd -r -g mysql mysql
mkdir -p /data/mysql	# 创建数据目录
chown mysql:mysql -R /data/mysql

配置my.cnf:

bash 复制代码
vim /etc/my.cnf

内容如下:

bash 复制代码
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
symbolic-links=0
explicit_defaults_for_timestamp=true
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

default_password_lifetime=0

lower_case_table_names = 1

character-set-client-handshake = FALSE
collation-server = utf8mb4_unicode_ci
character_set_server=utf8mb4
init_connect='SET NAMES utf8mb4'

max_allowed_packet=10485760

[mysql]
default-character-set = utf8mb4

[client]
default-character-set=utf8mb4

注意basedir和datadir需要改成自己实际目录!
进入mysql的bin目录,进行初始化:

bash 复制代码
cd /usr/local/mysql/bin

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

将mysql.server放到/etc/init.d/mysql中并设置权限:

bash 复制代码
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

chmod +x /etc/init.d/mysql

启动:

bash 复制代码
systemctl start mysql

#查看是否启动
ps aux | grep mysql

小插曲:此处我用service mysql start启动提示我mysql.service没找到,但是init.d下明明有mysql,用上面命令启动就行,奇怪。

进入mysql:

bash 复制代码
/usr/local/mysql/bin/mysql -uroot -p

此处提示我"缺少libncurses.so.5文件",网上解决方式将lib64下的libncurses.so.6做个软连接,但是我这个系统lib64下没有这个文件,我的是在lib32,用lib32做完链接后还是提示找不到;

最后用下面方式解决:

bash 复制代码
apt-get update

apt-get install libncurses5

如果上面安装不了,执行以下apt-get upgrade再安装试试。

查看密码:

bash 复制代码
cat /data/mysql/mysql.err

找到随机密码并复制;

登录:

bash 复制代码
/usr/local/mysql/bin/mysql -uroot -p

输入刚才复制的密码回车即可:

修改密码:

bash 复制代码
SET PASSWORD=PASSWORD('123456);
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

开放远程连接:

bash 复制代码
use mysql;
update user set host='%' where user='root';
flush privileges;

最后做个软连接,不用每次都到mysql的bin下运行:

bash 复制代码
ln -s /usr/local/mysql/bin/mysql /usr/bin

总结:

在麒麟系统安装遇到几个问题:

1、切换root用户;

2、service mysql start起不来;

3、进入mysql提示缺少文件libncurses.so.5;

相关推荐
大树8815 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠15 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质16 小时前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush416 小时前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行52016 小时前
Linux 11 动态监控指令top
linux
Inhand陈工17 小时前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智17 小时前
ARP代理--工作原理
运维·网络·arp·arp代理
不会C语言的男孩17 小时前
Linux 系统编程 · 第 8 章:进程基础
linux·c语言
shushangyun_17 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
古城小栈17 小时前
Unix 与 Linux 异同小叙
linux·服务器·unix