专栏首页阿焦在云上的日子centos 7.5安装mysql5.7.17
原创

centos 7.5安装mysql5.7.17

准备环境和安装包

linux :centos 7.5

mysql 二进制压缩包

压缩包连接:https://downloads.mysql.com/archives/community/

1、确认本地是否有安装maridb,如果有的话先卸载掉

rpm -qa | grep Mariabd

yum remove -nodeps -y maridb-xxx

2、本地环境清理干净后,创建相关目录

(官方默认目录:/usr/local/mysql)

mysql存放数据目录:mkdir dbdata

应用数据存储目录:mkdir appdata

binlog日志存储目录:mkdir dbbinlog

3、添加mysql用户/用户组

useradd mysql

groupadd mysql

给以上三个目录分别分配用户和用户组

4、解压mysql5.7安装包

tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

解压后如下,然后给这个目录创建一个软连接,用于后续使用此文件

5、设置环境变量

vim /etc/profile

export PATH=/data/dbdata/mysql/bin:$PATH

source /etc/profile

mysql -V 验证下

6、初始化mysql

mysqld --initialize-insecure --user=mysql --basedir=/data/appdata/mysql --datadir=/data/dbdata/

6.1、初始化语句扩展

mysqld --initialize-insecure:不会生成密码,直接空密码登录,建议无密码初始化

mysqld --initialize:这个参数会随机生成一个密码,需要到日志里面去查(应该是在mysqld.err日志里面)

我这里执行后报错了,如图

这里是由于我的path路径写错了

修改后初始化成功

注意:这里一般最常见的错误大概如下

6.1、

mysqld: error while loading shared libraries: libaio.so.q:

cannot open shared object file: no such file or directory

解决方法:yum install -y libaio-devel

6.2、

2020-07-21T04:53:03.990092Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

2020-07-21T04:53:03.991746Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.

2020-07-21T04:53:03.991774Z 0 [ERROR] Aborting

解决办法:清理datadir目录

rm -rf /data/dbdata/*

7、配置my.cnf配置文件

[mysqld]

user=mysql

basedir=/data/appdata/mysql

datadir=/data/dbdata

server_id=101

port=3306

socket=/tmp/mysql.sock

[mysql]

socket=/tmp/mysql.sock

8、启动mysqld服务

service mysqld start 或者 systemctl start mysql.service

启动报错,如下

/data/appdata/mysql/bin/mysqld_safe: line 586: /usr/local/mysql/data/mysqld_safe.pid: No such file or directory

awk: (FILENAME=- FNR=1) warning: error writing standard output (Broken pipe)

2020-07-21T07:02:57.447677Z mysqld_safe Logging to '/usr/local/mysql/data/VM-48-17-centos.err'.

Logging to '/usr/local/mysql/data/VM-48-17-centos.err'.

2020-07-21T07:02:57.451028Z mysqld_safe The file /usr/local/mysql/bin/mysqld

does not exist or is not executable. Please cd to the mysql installation

directory and restart this script from there as follows:

./bin/mysqld_safe&

See http://dev.mysql.com/doc/mysql/en/mysqld-safe.html for more information

解决方法:

因为mysqld_safe启动脚本默认的从/usr/local/mysql目录中读取另外一个启动脚本mysqld,因为我的安装目录为

/data/appdata/msyql,所以报错如上

这里可以根据报错来做下这个路径的软连接来解决

mkdir -p /usr/local/mysql/bin

ln -s /data/appdata/mysql/bin/mysqld /usr/local/mysql/bin/mysqld

然后再次启动服务可以了

延伸:如果是mysql 5.6 安装包,安装步骤没有区别,只是在初始化的时候执行语句不一样

/data/appdata/mysql/scripts/mysql_instll_db --user=mysql --basedir=/data/appdata/mysql --datadir=/data/dbdata/

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • mysql 数据迁移工具(dts)搭建以及常见问题

    数据传输服务 DTS 支持数据迁移功能,提供自建 MySQL 数据库到云数据库 TencentDB 的连续数据复制,用户可在不停服的情况下对数据进行在线热迁移,...

    云售后焦俊成
  • tcp/ip协议、三次握手等是什么样的

    毕竟这个问题算是很基本的了,平常处理网络问题的时候,这个基础点作为技术支持是必须要了解的,可能没有那么深,但是要知道发生了个啥,在和客户、网络专家沟通的时候要知...

    云售后焦俊成
  • mariadb数据同步功能

    mariadb支持多源同步,一对多,多对一,都是ok的,不不过还是会有或多或少的问题,无论是和业务相关,还是数据同步本身的一些限制,整理下平时遇到的一些问题,希...

    云售后焦俊成
  • 01.MySQL数据库初识

      百度的貌似不好理解啊,让我说啊,数据库是存储数据的地方,超哥,你这不是废话么?这位同学,你你你你你说的对,哈哈,存数据的地方是存在哪里呢,存在硬盘上,为什么...

    changxin7
  • PHP中MySQL操作相关方法

    用户7657330
  • 使用mysql-proxy配置mysql读写分离

    老七Linux
  • ubuntu安装C++之mysql库

    AlicFeng
  • Ubuntu 环境下远程连接 MySQL 数据库

    然后打开 vi /etc/mysql/mysql.conf.d/mysqld.cnf

    LeeCen
  • 网易面经~感谢网易的offer

    一面问的全都是基础知识,java的基础,Java内存分区,GC,类加载机制,集合类的源码结构,

    牛客网
  • MySQL5.7 关于在Windows安装的相关笔记

    Eller

扫码关注云+社区

领取腾讯云代金券