1.检查是否安装过mysql
[root@localhost /]# rpm -qa | grep mysql
这是未安装的按情况
在这里插入图片描述
如果存在的话最好先删除,否则后序版本不一致会有问题
可以通过以下命令删除:
[root@localhost /]# rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64
最后面的就是你查询出来的 mysql的信息
2.检查是否有残留的mysql文件夹
主要通过以下两个命令查询:
[root@localhost /]# whereis mysql [root@localhost lib]# find / -name mysql
存在这样的文件的话,我们就需要将这些文件删除:
[root@localhost /]# rm -rf /usr/lib64/mysql /usr/share/mysql /etc/selinux/targeted/a
验证是否已经删除干净了:
如果出现 find: ‘/run/user/1000/gvfs’: 权限不够
只需要输入下面的命令删除该文件即可
umount /run/user/1000/gvfs // 卸载该文件 rm -rf /run/user/1000/gvfs // 删除该文件
这样之后查询文件就不会出现这条提示信息了
3.检查mysql用户组和用户是否存在,如果没有,则创建
[root@localhost /]# cat /etc/group | grep mysql [root@localhost /]# cat /etc/passwd |grep mysql [root@localhost /]# groupadd mysql [root@localhost /]# useradd -r -g mysql mysql [root@localhost /]#
4.下载用于linux的mysql安装包
这里直接提供提供链接,可以直接下载
链接:https://pan.baidu.com/s/1HyVFBJLlQPKGMOyXpao0cw
提取码:q2a6
下载完成之后通过 winscp 工具将压缩包上传到 /usr/local 路径下
5.解压文件并且重命名
这里我们先通过以下的命令切换到压缩包所在的路径下:
cd /usr/local
之后通过该命令解压文件:
tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
之后我们将解压后的文件夹重命名为mysql
mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql
之后我们通过 ll 命令可以看到文件已经改名:
6.创建数据目录并且赋予权限
mkdir -p /data/mysql #创建目录 chown mysql:mysql -R /data/mysql #赋予权限
7.修改my.cnf文件
vim /etc/my.cnf
之后我们点击 I 键即可开始编辑,添加下面的内容:
[mysqld] bind-address=0.0.0.0 port=3306 user=mysql basedir=/usr/local/mysql datadir=/data/mysql socket=/tmp/mysql.sock log-error=/data/mysql/mysql.err pid-file=/data/mysql/mysql.pid #character config character_set_server=utf8mb4 symbolic-links=0 explicit_defaults_for_timestamp=true
8.初始化数据库
这里我们需要先进入mysql的bin目录下
cd /usr/local/mysql/bin
进入之后我们输入以下命令初始化数据库:
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/m
之后我们需要查看以下我们的密码:
cat /data/mysql/mysql.err
9.启动数据库并更改密码
先将mysql.server 放置到 /etc/init.d/mysql中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
启动mysql
service mysql start ps -ef|grep mysql
看到下面的页面,就说明我们已经成功安装mysql了:
之后我们就只需要登录mysql,修改密码即可.
./mysql -u root -p #bin目录下
然后输入我们刚才那个随机生成的密码,进入下面的界面:
现在我们就需要修改我们的登录密码了:
SET PASSWORD = PASSWORD('密码'); ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; FLUSH PRIVILEGES;
使用上面的命令不能够改变密码,登录会出现下面的错误:
这时候我们需要修改/etc/my.cnf文件,添加这一段代码:
skip-grant-tables
之后我们就可以不用输密码直接登录mysql,这时候我们再改密码:
update mysql.user set authentication_string=password('密码') where user='root'; FLUSH PRIVILEGES;
这样我们的密码才算真的修改了,之后我们推出mysql,并把my.cnf文件中的那段代码删掉,之后我们在登录mysql就可以用之前设置的密码正常登录了
这里我试过直接在上面一步就通过 update mysql.user set authentication_string=password(‘密码’) where user=‘root’; 来设置密码,但是提示报错:
所以采取了比较笨的方法.
10.开放端口连接Navicat
之后为了使得Navicat能够连接我们的数据库还要做以下的操作:
use mysql #访问mysql库 update user set host = '%' where user = 'root'; #使root能再任何host访问 FLUSH PRIVILEGES; #刷新
这些操作完之后我们在退出mysql之后还需要去开房服务器的3306端口.否则我们还是连接不上的
firewall-cmd --zone=public --add-port=3306/tcp --permanent;#开放端口
firewall-cmd --reload; #重启firewall firewall-cmd --list-ports; #查看已经开放的端口
到这里我们就能够正常连接到Navicat上了: