1、查看是否已安装MySQL
rpm -qa | grep mysql
2、卸载MySQL
rpm -e --nodeps + mysql的文件
第一步:下载mysql
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
第二步:在/usr/local/中解压压缩包,并改名为mysql
tar -zxvf mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz -C /usr/local/ (解压并放入/usr/local/中)
mv mysql-5.7.13-linux-glibc2.5-x86_64 mysql (改名为mysql)
第三步:创建用户组mysql,创建用户mysql并将其添加到用户组mysql中,并赋予读写权限
groupadd mysql
useradd -g mysql mysql
chown -R mysql mysql/
chown -R mysql:mysql /usr/
第四步:在mysql目录下创建data文件夹
cd /usr/local/mysql
mkdir data
第五步:配置my.cnf
vi /etc/my.cnf
添加以下内容
[mysql]
default-character-set=utf8 (#设置mysql客户端默认字符集)
[mysqld]
port = 3306 (#设置3306端口)
socket=/tmp/mysql.sock
basedir=/usr/local/mysql (#设置mysql的安装目录)
datadir=/usr/local/mysql/data (#设置mysql数据库的数据的存放目录)
max_connections=200 (#允许最大连接数)
character-set-server=utf8 (#服务端使用的字符集默认为8比特编码的latin1字符集)
log-error=/var/log/mysqld.log
第六步:初始化数据库
cd /usr/local/mysql
/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
5.7版本的初始化命令后面要加 --initialize
如果还是报错可以执行下面命令,然后再执行上面数据库初始化的命令
yum install libaio
第七步:启动mysql
service mysql start
出现问题:The server quit without updating PID file(/usr/local/mysql/var/MyServer.pid). … failed!
可能进程里已经存在mysql进程
解决方法:用命令“ps -ef|grep mysql”查看是否有mysql进程,如果有使用“kill -9 进程号”杀死
第八步:设置mysql密码(远程连接)
mysql -u root -p或者/usr/local/mysql/bin/mysql -uroot -p
使用第二个命令是没有配置环境变量
vi ~/.bashrc
export PATH=$PATH:/usr/local/mysql/bin
source ~/.bashrc
mysql> grant select on . to root@’%’ identified by “密码”;
mysql> GRANT ALL ON . TO ‘root’@’%’;
mysql> flush privileges;
修改密码:
mysql -u root -p
mysql> alter user 'root'@'localhost' identified by'修改后的密码';
mysql> exit
第九步:重启mysql
service mysqld restart
结果为:
可查看mysql 启动状态
service mysqld status 或者 # service mysql status
问题:本地Navicat连接VMware中的mysql,每次虚拟机重启,都必须关闭防火墙,才能进行连接:
关闭防火墙命令,即可连接数据库:
systemctl stop firewalld.service
MySQL登录时出现 Access denied for user ‘root’@’…’ (using password: YES) 的原因及解决办法,可参考链接
https://blog.youkuaiyun.com/u012467855/article/details/81266470