虚拟机安装mysql5.7.20_虚拟机环境下CentOS 7 中安装Mysql 5.7.24(源码方式安装)

偿试过用yum安装的都失败了,原因是服务启动时报错,偿试了多种解决办法,均不成功。然用源码方法却成功了,下面就介绍记录一下安装步骤。

1 安装cmake工具

yum install -y cmake make gcc gcc-c++ libaio ncurses ncurses-devel

2 进入/usr/local/src目录,下载安装操作

下载mysql压缩包

wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

解压

tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

复制解压后的文件夹到/usr/local/mysql目录

cp -r mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

添加系统mysql组和mysql用户

groupadd mysql

useradd -r -g mysql mysql // 添加完成后可用id mysql查看

安装数据库,这一步时间要久一点

切到mysql目录 cd /usr/local/mysql

修改当前目录拥有者为mysql用户 chown -R mysql:mysql ./

安装数据库 bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

此步会生成临时密码,不记得也没关系,可通过命令查找出来:grep "password" /var/log/mysqld.log

3 配置my.cnf

清空my.cnf:cat /dev/null > /etc/my.cnf

编辑:vim /etc/my.cnf 复制如下文本进去

[mysqld]

character_set_server=utf8

init_connect='SET NAMES utf8'

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

#不区分大小写

lower_case_table_names = 1

#不开启sql严格模式

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

log-error=/var/log/mysqld.log

pid-file=/usr/local/mysql/data/mysqld.pid

启动相关配置

添加开机启动

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

修改开机启动路径

vim /etc/init.d/mysqld

basedir=与datadir=后面添加:

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

启动mysql

service mysqld start

加入开机启动

chkconfig --add mysqld

登录mysql报错

mysql -uroot -p

报错:-bash: /usr/bin/mysql: 没有那个文件或目录

解决:添加软连接 ln -s /usr/local/mysql/bin/mysql /usr/bin

报错Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

原因: 我们前面my.cnf中mysqld下,socket=/tmp/mysql.sock。

解决:在服务启动后执行 ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

设置root用户密码

找回默认密码

grep "password" /var/log/mysqld.log

设置新密码

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

flush privileges; #刷新权限

或者

step 1: SET PASSWORD = PASSWORD(‘你的新密码’);

step 2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

step 3: flush privileges;

然后,执行exit退出,重新mysql -u root -p登录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值