在centos7中安装mysql5.7以上

在网上看到很多人都在usr/local目录下进行安装,本实例是在opt文件下进行安装,安装mysql5.7以上的实例

将压缩包放入opt文件目录下,前提是在root用户下进行操作。

在centos7中安装mysql5.7以上
重命名,重命名解压的文件名为mysql-5.7.22

mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql-5.7.22

在centos7中安装mysql5.7以上
建立一个快捷方式,使用mysql指向mysql-5.7.22

ln -s mysql-5.7.22 mysql

在centos7中安装mysql5.7以上

添加用户,可以使用groups mysql查看当前是否有用户组
在centos7中安装mysql5.7以上
如果没有用户,则可以添加用户
#添加用户组

groupadd mysql

#添加用户mysql 到用户组mysql

useradd -g mysql mysql

在centos7中安装mysql5.7以上

添加完用户之后,cd进入mysql中
在centos7中安装mysql5.7以上

在mysql目录下创建文件夹,使用mkdir data
在centos7中安装mysql5.7以上

之后,choose own 更改拥有都为mysql
使用命令chown -R mysql:mysql ./
在centos7中安装mysql5.7以上
可以看到,从刚刚的两排root变成了两排mysql
之后执行命令./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql --datadir=/opt/mysql/data,执行完之后,会产生一个随机密码,提供后面更改密码使用。可以复制进行保存
在centos7中安装mysql5.7以上

将mysql/目录下除了data/目录的所有文件,改回root用户所有,使用命令chown -R root .
在centos7中安装mysql5.7以上

mysql用户只需作为mysql-5.7.22/data/目录下所有文件的所有者,执行命令chown -R mysql data

在centos7中安装mysql5.7以上

复制文件

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

之后到cd到init.d目录下

cd /etc/init.d

进行权限设置,chmod 755 /etc/init.d/mysqld

在centos7中安装mysql5.7以上

opt/mysql/bin/my_print_defaults文件复制到 usr/bin下面
在centos7中安装mysql5.7以上

修改启动脚本 vi /etc/init.d/mysqld
进入之后找到
在centos7中安装mysql5.7以上
修改为;

basedir=/opt/mysql-5.7.22/
datadir=/opt/mysql-5.7.22/data
port=3306

修改之后退出vi编辑器
在centos7中安装mysql5.7以上

加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了
使用命令vi /etc/profile,在配置jdk的命令下面加入export PATH=$PATH:/usr/local/mysql-5.7.22/bin
在centos7中安装mysql5.7以上
退出vi编辑器,并且保存

刷新立即生效

source /etc/profile

修改mysql配置项,使用命令vi /etc/my.cnf进行配置,将里面全部内容删除,加入以下代码

[mysqld]
basedir = /opt/mysql-5.7.22
datadir = /opt/mysql-5.7.22/data
socket = /tmp/mysql.sock
user = mysql
tmpdir = /tmp
symbolic-links=0
[mysqld_safe]
log-error = /opt/mysql-5.7.22/data/error.log
pid-file = /opt/mysql-5.7.22/data/mysql.pid
!includedir /etc/my.cnf.d

在centos7中安装mysql5.7以上

启动mysql

service mysqld start

注意:在这里如果发生错了,可以删除 /opt/mysql-5.7.22/data下所有文件,重新执行./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql --datadir=/opt/mysql/data,重新启动mysql

/etc/init.d/mysqld restart

还有,如果在使用mysqld使用了其他人的文件,会导致权限不够,或者如果mysqld文件丢失,可以在执行一次cp support-files/mysql.server /etc/init.d/mysqld进行复制生成,之后再设置权限,chmod 755 /etc/init.d/mysqld
这样做就可以了

执行完启动,成功之后

在centos7中安装mysql5.7以上

进入mysql修改初始密码,修改远程连接的用户权限问题

在centos7中安装mysql5.7以上
输入之前的随机密码
输入密码成功之后,
在centos7中安装mysql5.7以上

在centos7中安装mysql5.7以上

mysql -uroot -p
use mysql;
update user set password=password("root") where user="root";

如果出现Unknown column ‘password’ in 'field list’使用下面这种方式
或者

update user set authentication_string=password("root") where user="root";

在centos7中安装mysql5.7以上

flush privileges;

之后进行退出

exit;