之前安装mysql遇到了很多坑,感觉以下方法稳定可用做个记录方便以后忘记的时候查看
删除系统自带mariadb
一、检查是否自带mariadb数据库
rpm -qa|grep mariadb
如果有,则返回给你一个标志,反之则没有返回。
二、删除mariadb数据库
注意:如果你【rpm -qa|grep mariadb】没有返回值,则不需要执行如下命令。
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
我的mariadb版本为:【5.5.56-2.el7.x86_64】
mariadb版本可能会有差异,请以自己的版本为准,修改如上命令版本关键数。
安装Mysql
一、进入/opt/mysql目录
cd /opt/mysql 把文件夹中的rht6x或者rht7x放入mysql目录中
二、rpm -ivh命令安装3个rpm包(第4个单拿出来谈)
注意:你一定要按照顺序进行安装,因为rpm包之间相互依赖。
1 rpm -ivh mysql-community-common-5.7.26-1.el6.x86_64.rpm
2 rpm -ivh mysql-community-libs-5.7.26-1.el6.x86_64.rpm
3 rpm -ivh mysql-community-client-5.7.26-1.el6.x86_64.rpm
按照上述代码顺序,依次执行。
每次执行后,你如果看到了如图进度标志,则恭喜你安装成功了。
最后,你需要再一次确认是否成功安装了3个rpm包,键入命令:
rpm -qa | grep mysql
它可以帮你查看当前mysql安装情况,请看下图,如果你也有则证明你可以继续进行了。
三、安装第四个rpm包(mysql-community-server-5.7.26-1.el6.x86_64.rpm)
如果采用前3个npm包的安装方式(如果你的Linux系统yum安装了旧版本的GPG keys),就会出现报错,导致无法安装。但也很有可能yum安装的是新版本的GPG keys,那么将不会报错,为了不浪费你的时间,我宁愿多写一些。
想了解【mysql-community-server-5.7.26-1.el6.x86_64.rpm】报错显示及解决方案请点击此处查看。
进入正题,我们执行如下命令:
rpm -ivh mysql-community-server-5.7.26-1.el6.x86_64.rpm --force --nodeps
如果也出现了【#######100%】标志,那么恭喜你完成了Mysql的全部安装。
启动Mysql服务
service mysqld start
如果安装mysql出现了以上的报错信息.这是却少numactl这个时候如果是Centos就yum -y install numactl就可以解决这个问题了
如果你看到了绿颜色的【OK】,那么你的Mysql可以工作了,但还需要以下设置。
获取自动生成的临时密码
首次安装后,必须生成临时密码才能登录到Mysql客户端。
注意:此命令是rpm方式安装Mysql才有的【mysqld.log】文件。
如果你不是从本篇博客从前到后安装,请谨慎,因为它只对rpm方式安装的mysql有效。
grep ‘temporary password’ /var/log/mysqld.log
【 l)a_gg2R;21! 】(最后边的那一串乱码)就是你的临时密码,想了解更多请点击这里。
<±iwq1lwu_J
利用临时密码登录到Mysql客户端
sudo mysql -u root -p
你会看到如图所示的password标志,输入刚刚临时生成的密码(输入密码时不可见)。
最后,你会看到如图状态,恭喜你,你成功了。
设置新的Mysql密码(不再使用临时密码)
注意:在执行以下命令之前,请先看下方加粗字体 ↓
alter user ‘root’@‘localhost’ identified by ‘@wjb13191835106’;
我设置的密码为:@wjb13191835106
注意:Mysql有自己的密码策略,【@wjb13191835106】不符合策略,如果没有修改过相关值,则这样执行会报错。
(1)如果你只想设置一个简单的密码(关闭密码策略),请访问这篇博文。
(2)设置一个符合Mysql密码策略的复杂密码
授权root允许远程访问(可视化软件可以建立链接)
请访问这篇博文完成详细的设置
grant all privileges on . to ‘root’@’%’ identified by ‘@wjb13191835106’;
完成授权
flush privileges;
刷新授权
设置开机启动权限配置
本地开发环境安装Navicat for Mysql
通过修改MySQL配置文件关闭ONLY_FULL_GROUP_BY
直接登录数据库set sql_mode,数据库重启后会还原
查找MySQL配置文件
执行命令如下:
which mysql
1
结果如下:
通过以下命令查找MySQL配置文件(命令前面就是上一步查到的路径):
/usr/bin/mysql --verbose --help | grep -A 1 ‘Default options’
结果如下(MySQL启动时按如图顺序去找配置文件,首先找/etc/my.cnf
存不存在,如不存在则继续找下去,在操作中看哪个文件存在就是那个为配置文件):
修改MySQL配置文件(我的配置文件是/etc/my.cnf )
执行命令:
vim /etc/my.cnf
在[mysqld]…[mysqld]中间插入(一定在2个[mysqld]中间插入,不然不会生效):
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
lower_case_table_names=1(插入此句数据库名不区分大小写)
保存,重启MySQL:
service mysqld restart