第一次使用linux服务器记录下自己在linux下使用rpm安装mysql以便以后使用,绕过这些坑
基本全部复制过来https://www.jb51.net/article/150213.htm感谢大佬!
首先我在mysql下下载的64位rpm安装包https://dev.mysql.com/downloads/mysql/
将下载的安装包上传到linux服务器上,可以直接用命令rz进行上传,如果提示没有rz暗转一下lrzsz即可,
安装lrzsz:yum install -y lrzsz
上传的时候默认在root目录下,当让你也可以借助WinSCP进行上传,上传完成后,我们进入这个文件所在目录,如果是在默认的root目录下就不用管,我们解压一下这个tar文件
解压文件:tar -xvf mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar(这里说一下,如果是tar.xz文件需要先执行 xz -d mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar得到tar文件在进行此步骤)
将解压到的所有rpm文件复制到usr/local/mysql目录下,我是直接用winscp拷贝的,简单粗暴
好了,现在在该目录下有如下文件:
好了,准备工作已经ok了,下面开始安装
一、配置安装前的环境:
1,查看mariadb版本(rpm -qa|grep mariadb)
2,卸载mariadb:rpm -e mariadb-libs-5.5.56-2.el7.x86_64
3,安装依赖环境:
yum install -y openssl-devel.x86_64 openssl.x86_64
yum install -y libaio.x86_64 libaio-devel.x86_64
yum install -y perl.x86_64 perl-devel.x86_64
yum install -y perl-JSON.noarch
yum install -y autoconf
yum install -y wget
yum install -y net-tools
4
,关闭防火墙(具体我也不知道为啥)
systemctl stop firewalld.service
systemctl disable firewalld.service
5,禁用selinux
vi /etc/selinux/config可以看到打开的文件,这一段将SELINUX=enforcing改为SELINUX=disabled即可
然后关闭并保存即可按esc--->输入:wq即可保存退出编辑。reboot重启服务器,或者你的系统
6,开始安装
以下是必要安装,必须按照这个顺序一步一步来,不然报各种依赖关系的错误
rpm -ivh mysql-community-common-8.0.13-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.13-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.13-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.13-1.el7.x86_64.rpm
下面是非必要安装,也需要按照顺序
rpm -ivh mysql-community-libs-compat-8.0.13-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-compat-8.0.13-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.13-1.el7.x86_64.rpm
rpm -ivh mysql-community-test-8.0.13-1.el7.x86_64.rpm
至此安装完成,但是中间有一个小插曲,安装server的时候报错
只要安装一下numactl即可:yum -y install numactl;
7,安装完成
初始化数据库:mysqld --initialize --console
目录授权:chown -R mysql:mysql /var/lib/mysql/
查看mysql是否启动: service mysqld status
启动mysql:service mysqld start
停止mysql:service mysqld stop
重启mysql:service mysqld restart
二、修改初始密码
1,查看初始密码
grep password /var/log/mysqld.log
2,登陆mysql
mysql -p(这个时候直接输入上面的临时密码就好了,注意:linux输入密码的时候是不显示的,输入完回车就好)
3,修改初始密码(在这被坑了,不同mysql版本对应不同的修改命令,这里只区分一下8.0以上的版本)
a:8.0以下版本修改方法,
set password = password("123456");注意了啊,我这里后面的“;”一定要打上去,注意
FLUSH PEIVILEGES;
我这里没;号,后面还弄了好久
b:8.0以上的版本修改
alter user 'root'@'localhost' identified by 'zlw123';(同样注意这个分号)
FLUSH PEIVILEGES改密码一定要flush
use mysql;
update user set host = '%' where user = 'root';
select host, user from user;
FLUSH PEIVILEGES
完美!修改成功(ctrl+z退出使用新密码重新登就ok了)
三、验证一哈
1,首先设置连接
2,修改加密方式(仅针对8.0以上版本生效)
ALTER USER'root'@'%' IDENTIFIED BY '123' PASSWORD EXPIRE NEVER;
ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY '123';
FLUSH PRIVILEGES;
3,本地连接测试
弄完了当然得本地连接测试一下啊
点击连接测试
舒服!,就可以用啦!!
不要着急,再给大家安利一个更便捷的方式
直接使用yum安装,不过要注意,centos7没有yum包,要自己先下载
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm yum update yum install mysql-server chown mysql:mysql -R /var/lib/mysql//设置权限 mysqld --initialize//初始化mysql systemctl start mysqld//启动mysql systemctl status mysqld//查看运行状态。看到绿色的run就ok啦
设置好了我们直接登陆mysql就行,默认密码是空,然后如上设置下密码
后面要开启远程登陆权限
grant all privileges on *.* to 'root'@'%' identified by '123' with grant option;
flush privileges;
这样就ok了,简单粗暴