linux readhat7.4安装mysql5.7(博主亲测,不要再走弯路啦)

日志

如果出错,实在不行看看日志进入mysql的logs文件夹,有一个mysql.log

卸载

直接覆盖安装会出错,一定要删干净

a、MariaDB数据库是MySQL数据库的一个分支,一般CentOS 7系统中会默认安装该数据库

yum remove mariadb-libs.x86_64

b、检查是否删除

yum list installed | grep mariadb

c、删除mysql

yum remove  mysql mysql-server mysql-libs mysql-server;

d、检查是否删除

yum list installed | grep mysql

e、删除/etc/目录下的my.cnf文件

rm –rf /etc/my.cnf

f、将找到的相关东西rm -rf掉;

find / -name mysql

g、查询出来的东东yum remove掉

rpm -qa|grep mysql

建户

可能会因为没有mysql用户而无法安装mysql 

建组:groupadd mysql                                          
建户:useradd -g mysql -d /syzcd/mysql mysql  
         

依赖

如果没有安装该依赖包会导致数据目录初始化和服务启动失败
 

安装:yum install libaio
检验:yum list installed | grep libaio

对于MySQL 5.7.19及以上版本还需要安装libnuma依赖包

安装:yum install numactl
检验:yum list installed | grep numactl

安装

博主将文件解压到了syzcd

解压:tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
重命名:mv mysql-5.7.22-linux-glibc2.12-x86_64/ mysql
授权:chmod 777 /syzcd/mysql/
创建数据目录:mkdir /syzcd/mysql/data
  • 配置文件

MySQL从5.7.18版本开始不再自带my.cnf

进入:cd /syzcd/mysql
创建:touch my.cnf
编辑:vi my.cnf
[mysqld] 
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER
# 设置为自己MYSQL的安装目录
basedir=/syzcd/mysql/
# 设置为MYSQL的数据目录
datadir=/syzcd/mysql/data/
#默认编码格式
character_set_server=utf8
init_connect='SET NAMES utf8'
#允许默认时间字段为0
explicit_defaults_for_timestamp=true
#查询数据表时,表名不区分大小写
lower_case_table_names=1
#支持运行Navicat脚本
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#跳过数据库权限验证,如:跳过密码验证、允许修改数据表等
skip-grant-tables
  • 创建软连接

可能会默认从/usr/local/mysql寻找服务 

打开目录:cd /usr/local/
映射:ln –s /syzcd/mysql/ mysql
建户:useradd -g mysql -d /usr/local/mysql mysql  
  • 编译
回到安装目录:cd /syzcd/mysql/

初始化:./bin/mysqld --user=mysql --basedir=/syzcd/mysql --datadir=/syzcd/mysql/data --initialize

初始化后会生成一个随机密码要记录下来,登录时要使用 

  • 生成ssl连接密钥文件
./bin/mysql_ssl_rsa_setup --defaults-file=/syzcd/mysql/my.cnf
  • 启动服务
./support-files/mysql.server start
service mysqld start

 

  • 登录

a、密码为上文生成的随机码 

/syzcd/mysql/bin/mysql -u root -p -P 3306

b、修改root用户的登录密码,改为“root”:

set password for root@localhost = password('root');

c、再次登录验证新密码 

开机自启

 a、拷贝启动文件到/etc/init.d/下并重命为mysqld

 cp  /syzcd/mysql/support-files/mysql.server   /etc/init.d/mysqld 

b、增加执行权限

 chmod 755 /etc/init.d/mysqld 

c、添加到自启动项列表

chkconfig --add mysqld 

d、设置开机启动

chkconfig mysqld on

验证

博主曾多次过遇到重启后mysql不能登录、服务无法启动的问题

a、重新启动

reboot

b、登录

/syzcd/mysql/bin/mysql -u root -p -P 3306
发布了123 篇原创文章 · 获赞 54 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_36750352/article/details/104680346