银河麒麟(ky10.aarch64)操作系统安装部署mysql5.7.26

准备安装包

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.29.tar.gz

wget https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4/rpcsvc-proto-1.4.tar.gz

安装编译环境

yum install -y gcc gcc-c++ make cmake ncurses ncurses-devel bison libtirpc libtirpc-devel rpcgen

创建mysql用户

useradd mysql -s /sbin/nologin

解压rpcsvc安装包

tar xvf rpcsvc-proto-1.4.tar.gz

cd rpcsvc-proto-1.4

编译安装

./configure && make && make install

解压mysql安装包

tar xvf mysql-boost-5.7.29.tar.gz

cd mysql-5.7.29

编译安装

cpp 复制代码
cmake \
-DCMAKE_INSTALL_PREFIX=${mysql_home} \
-DSYSTEMD_PID_DIR=${mysql_home} \
-DMYSQL_UNIX_ADDR=${mysql_home}/mysql.sock \
-DMYSQL_DATADIR=${mysql_home}/data \
-DSYSCONFDIR=/etc \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DWITH_BOOST=${boost_home}/boost_1_59_0 \
-DWITH_SYSTEMD=1 && \
make -j $(nproc) && \
make install

数据库授权

chown -R mysql.mysql ${mysql_home}

修改配置文件

vim /etc/my.cnf

cpp 复制代码
[client]
socket=/opt/mysql/data/mysql.sock
default-character-set=utf8

[mysqld]
datadir=/opt/mysql/data
socket=/opt/mysql/data/mysql.sock
port=3306
skip-ssl
init_connect='SET collation_connection = utf8_general_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake

max_connections=3000
lower_case_table_names=1
skip-name-resolve=1
log_bin_trust_function_creators=1
transaction_isolation=READ-COMMITTED
binlog_format=mixed
max_allowed_packet=104857600

local-infile=0
skip_symbolic_links=yes
sql_mode=STRICT_ALL_TABLES,NO_AUTO_CREATE_USER


symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

新增完成之后需要创建一个日志文件

touch /var/log/mysqld.log

授权

chown -R mysql:mysql /var/log/mysqld.log

初始化数据库

cpp 复制代码
mysqld --initialize-insecure --user=mysql --basedir=${mysql_home} --datadir=${mysql_home}/data

初始化完成之后查看data目录是否有文件写入

启动mysql

cpp 复制代码
cp ${mysql_home}/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system
systemctl daemon-reload
systemctl enable mysqld.service
systemctl start mysqld.service

一般初始化之后root密码默认为空,直接回车。

mysql - uproot -p

修改root密码

alter user 'root'@'localhost' identified by '新密码';

创建用户

GRANT ALL PRIVILEGES ON . TO '用户名'@'%' IDENTIFIED BY '密码' WITH

GRANT OPTION;

重载授权表:

FLUSH PRIVILEGES;

相关推荐
灯澜忆梦8 小时前
【MySQL17】进阶篇 | InnoDB引擎
数据库·mysql
布莱克60510 小时前
理解数据库聚簇索引:原理、优势与适用场景
数据库·mysql
这个DBA有点耶11 小时前
MySQL迁移实战:从mysqldump到专业工具的完整选型指南
数据库·mysql·dba
01_ice13 小时前
MySQL内外连接
数据库·mysql
量子炒饭大师15 小时前
MySQL 5.7 在 CentOS 7 环境安装:从清理 MariaDB 到初始化与完善配置
数据库·mysql·centos·mariadb
吉甫作诵17 小时前
MySQL 8.4.10 二进制包安装教程(Linux 环境)
linux·mysql
聊浮游18 小时前
JAVA2026最新全套学习资料、学习路线
java·开发语言·jvm·mysql·spring·maven·idea
MacroZheng18 小时前
完美替代 Navicat!这款内置 AI 的数据库工具,太香了!
java·后端·mysql
文人sec20 小时前
普通索引和唯一索引、count(*)为何慢?、order bay怎么工作?
数据库·mysql·数据分析·数据库架构
没文化的阿浩20 小时前
【MySQL】数据类型
android·mysql·adb