华为云ARM架构下Centos7.4 mysql 版本升级至5.7.30

华为云ARM架构下Centos7.4 mysql 版本升级至5.7.30

最初安装mysql 5.7.27,安全扫描漏洞太多,只能升级相对稳定的高版本。
数据库版本升级,首先考虑是否需要备份mysql,无则忽略以下备份步骤。
1.进入mysql数据库保存目录:

cd /usr/local/data
备份数据库,数据库多则考虑使用shell脚本批量备份
mysqldump -uroot -p 数据库名>/usr/local/backup/数据库名.sql
  1. 停止服务并彻底卸载之前手动安装mysql
systemctl stop mysqld
//查找所有msyql文件并手动删除
find / -name mysql

3.安装

  • 下载安装包
Wget https://obs-mirror-ftp4.obs.cn-north-myhuaweicloud.com/database/mysql-5.7.30.tar.gz
  • 安装依赖包
yum install -y perl openssl openssl-devel libaio perl-JSON autoconf
  • 解压并安装
tar -xvf mysql-5.7.30.tar.gz
cd aarch64
yum remove -y mariadb-libs 
yum install *.rpm 
  • 启动MySQL,查看状态
systemctl start mysqld
systemctl status mysqld
  • 登录数据库 密码生成在/var/log/mysqld.log中,通过/password查找
grep ‘password’ /var/log/mysqld.log
mysql -uroot -p
  • 修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
  • 开放远程连接:
mysql> use mysql; mysql> update user set host = '%' where user = 'root'; 
  • 生效:
mysql> FLUSH PRIVILEGES;

4.恢复备份数据

mysql -uroot -p
  • 进入msyql数据保存目录
cd /var/lib/mysql
  • 执行sql脚本
source /usr/local/backup/adapterdb.sql 

5.相关设置

5.1支持大小写设置

a)查看mysql大小写设置

show variables like 'lower%'

lower_case_table_names = 0;区分大小写
b)在my.cnf中的[mysqld]后面添加lower_case_table_names=1
5.2 关闭ONLY_FULL_GROUP_BY模式
分组查询报错:
mySql中Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre
原因:在MySQL5.7版本之后对group by进行了优化,默认启动了ONLY_FULL_GROUP_BY模式。

vi /etc/my.cnf

解决:在[mysqld]后面追加下面这句配置后重启服务解决问题;

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

如下图:
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 安装步骤如下: 1. 首先,确保CentOS 7操作系统已经安装并且是最新版本。 2. 确认已经安装了必要的软件包,包括GCC、C++、CMake、GMP、MPFR和MPC库:sudo yum install -y gcc-c++ cmake ncurses-devel libaio-devel openssl-devel zlib-devel libgcrypt-devel libedit-devel libxml2-devel libxslt-devel libicu-devel libcurl-devel libpng-devel libjpeg-devel libzip-devel bzip2-devel readline-devel systemd-devel 3. 下载MySQL 5.7.34 tar包:wget -c https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.34.tar.gz 4. 解压tar包:tar -zxvf mysql-5.7.34.tar.gz 5. 进入解压后的目录:cd mysql-5.7.34 6. 创建MySQL安装目录:sudo mkdir /usr/local/mysql 7. 为MySQL安装目录赋予权限:sudo chown -R root:root /usr/local/mysql 8. 创建MySQL数据目录:sudo mkdir /var/mysql 9. 为MySQL数据目录赋予权限:sudo chown -R mysql:mysql /var/mysql 10. 在MySQL安装目录下创建编译文件夹:cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/var/mysql \ -DWITH_BOOST=/opt/boost \ -DWITH_SYSTEMD=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITH_SSL=system \ -DENABLED_LOCAL_INFILE=1 \ -DSYSCONFDIR=/etc \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_unicode_ci . 11. 编译:make 12. 安装:sudo make install 13. 初始化MySQL数据库:sudo /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/var/mysql 14. 启动MySQL服务:sudo systemctl start mysql 15. 修改root用户密码:sudo /usr/local/mysql/bin/mysqladmin -u root password 'new_password' 至此,MySQL 5.7.34的安装就完成了。 ### 回答2: CentOS 7 是一款非常稳定和可靠的操作系统,然而,对于一些新手来说,在安装 MySQL 时可能会遇到一些困难。如果您想在 CentOS 7 上安装 MySQL 5.7.34,则可以按照以下步骤进行操作: 步骤一:检查 tar 包 在安装 MySQL 之前,您需要从官方网站下载 MySQL 5.7.34 的tar包。请确保下载的tar包处于完好无损的状态,可以使用以下命令进行检查: $ md5sum mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz (替换为您下载的文件名) 如果输出结果与官方网站上的MD5值匹配,则说明下载的文件没有被损坏或者篡改。 步骤二:解压 tar 包 接下来,您需要使用以下命令解压tar包: $ tar -zxvf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz 解压完成后进入解压文件夹: $ cd mysql-5.7.34-linux-glibc2.12-x86_64 步骤三:创建 MySQL 用户组和用户 为了保证 MySQL 运行的安全性,我们需要创建一个新的 MySQL 用户组和用户。可以使用以下命令来创建: $ groupadd mysql $ useradd -r -g mysql -s /bin/false mysql 步骤四:安装 MySQL 完成以上步骤之后,就可以使用以下命令执行 MySQL 的安装: $ mkdir -p /usr/local/mysql $ chown -R mysql:mysql /usr/local/mysql $ ./bin/mysqld --initialize --user=mysql $ ./bin/mysql_ssl_rsa_setup 执行完成后,MySQL 将会自动在 /usr/local/mysql/data 目录下生成root 用户的初始密码,您可以使用以下命令查看: $ cat /usr/local/mysql/data/*-host.err | grep "A temporary password" 步骤五:启动 MySQL 启动 MySQL 可以使用以下命令: $ ./support-files/mysql.server start 您也可以将 MySQL 自动启动脚本添加到系统服务中,使 MySQL 在系统启动时自动启动: $ cp support-files/mysql.server /etc/init.d/mysqld $ chkconfig --add mysqld $ chkconfig --level 345 mysqld on 步骤六:配置 MySQL 启动 MySQL 后,您需要修改 root 用户的密码,并且修改 MySQL 的配置文件,使 MySQL 具有更好的性能和安全性。 MySQL 配置文件位于 /etc/my.cnf 或者 /usr/local/mysql/etc/my.cnf。您可以根据需要修改配置文件来改变 MySQL 的运行参数。 总结 通过以上步骤,您可以在 CentOS 7 上安装 MySQL 5.7.34,并且调整 MySQL 的性能和安全性。这些步骤都相对简单,即使是 Linux 新手也能够轻松上手,希望本文能对您在 CentOS 7 上安装 MySQL 5.7.34 有所帮助! ### 回答3: 首先,我们需要从官网(https://dev.mysql.com/downloads/mysql/5.7.html)下载MySQL 5.7.34的tar包,并解压至指定目录。 1. 解压 下载好tar包后,我们需要将它解压到指定的目录中,这里以/opt目录为例: ``` tar -zxvf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz -C /opt/ ``` 解压完毕后,我们可以看到/opt目录下多了一个mysql-5.7.34-linux-glibc2.12-x86_64目录。 2. 创建mysql用户组和用户 创建mysql用户组: ``` groupadd mysql ``` 创建mysql用户: ``` useradd -g mysql mysql ``` 3. 配置MySQL 创建一个新的MySQL配置文件my.cnf: ``` vi /etc/my.cnf ``` 在my.cnf中增加以下内容: ``` [mysqld] basedir=/opt/mysql-5.7.34-linux-glibc2.12-x86_64 datadir=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/data socket=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/mysql.sock user=mysql ``` 其中: - basedir:MySQL安装目录; - datadir:存放数据库文件的目录; - socket:MySQL使用的套接字文件; - user:运行MySQL服务的用户。 4. 初始化MySQL 使用mysqld_safe初始化MySQL: ``` cd /opt/mysql-5.7.34-linux-glibc2.12-x86_64 ./bin/mysqld_safe --user=mysql --datadir=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/data & ``` 初始化完成后会生成一个临时密码,我们需要将它保存下来备用。 5. 修改root密码 登录MySQL,并修改root密码: ``` ./bin/mysql -uroot -p mysql> SET PASSWORD = PASSWORD('new password'); ``` 其中new password为新密码。 6. 配置systemd启动项 为了方便管理,我们可以将MySQL配置为systemd服务。 创建一个mysql.service文件: ``` vi /usr/lib/systemd/system/mysql.service ``` 输入以下内容: ``` [Unit] Description=MySQL After=network.target [Service] Type=forking ExecStart=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/bin/mysqld_safe --user=mysql --datadir=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/data ExecStop=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/bin/mysqladmin -u root -p shutdown [Install] WantedBy=multi-user.target ``` 保存并退出。 启动MySQL服务: ``` systemctl start mysql ``` 设置MySQL自启动: ``` systemctl enable mysql ``` 7. 测试MySQL 使用以下命令测试MySQL是否正常运行: ``` ./bin/mysql -uroot -p ``` 输入之前设置的root密码,成功连接则说明MySQL安装成功。 以上就是在CentOS 7中使用tar包安装MySQL 5.7.34的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值