注:本人使用版本:
CentOS-7-x86_64-DVD-1804
mysql-8.0.13-1.el7.x86_64
首先,我们去官网挑选适合自己的MySQL版本,因为我们用的是CentOS系统,选择一个Redhat的版本。
复制URL,到Linux下找一个要下载的路径,并利用wget工具将MySQL下载到服务器:
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar
解压文件
tar -xvf mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar
当然,也可以在网页上直接下载MySQL文件,然后利用Xftp等工具传到Linux上,具体自行百度。
此外在安装前还有两步,
1、查看是否安装了mariaDB(与mysql有冲突,简单粗暴卸载就完了)
rpm -qa | grep mariadb
卸载mariaDB
rpm -e ***(*** 为软件全名)
如果卸载不了采取强制卸载
rpm -e --nodeps ***(*** 为软件全名)
2、安装依赖包
yum install libaio
接下来就是安装MySQL了。我们利用rpm安装
rpm -vih XXXXXX(XXXXXX 为 rpm包全名)
按照依赖顺序依次安装(能安装的安装就行,像test这个不方便安装就算了。)
mysql-community-common-8.0.13-1.el7.x86_64
mysql-community-libs-8.0.13-1.el7.x86_64
mysql-community-libs-compat-8.0.13-1.el7.x86_64
mysql-community-client-8.0.13-1.el7.x86_64
mysql-community-embedded-compat-8.0.13-1.el7.x86_64
mysql-community-server-8.0.13-1.el7.x86_64
启动mysql服务(忘了从CentOS 哪个版本之后对命令进行了更新)
systemctl start mysqld
初次安装MySQL8以上的版本,MySQL会给我们自动生成一个随机密码。
查看密码
grep 'temporary password' /var/log/mysqld.log
登录服务
mysql -u root -p
使用密码登录,就可以使用MySQL了。
如果觉得使用随机密码不方便,也可以更改密码。
首先使用mysql(系统默认库),因为 mysql 数据库中存储了一张 MySQL 用户的 user 表。
use mysql;
select host, user, authentication_string, plugin from user;
执行完上面的命令后会显示一个表格
表格中有以下信息:
host: 允许用户登录的 ip ‘位置’ % 表示可以远程;
user: 当前数据库的用户名;
authentication_string: 用户密码(在mysql 5.7.9以后废弃了password字段和password()函数);
plugin: 密码加密方式;
ALTER user '用户名'@'允许用户登录的IP位置' IDENTIFIED BY '你的密码';
这里面这个密码要设置成大写字母、数字、符号的组合。因为MySQL对用户密码做了一定限制,防止密码过于简单,如果个人使用可以修改密码规则,前面右转去问度娘。
上面都完事了,那么MySQL也就装好了,接下来我们配置远程访问。
首先,修改MySQL的访问权限和开放Linux3306端口。
还是到mysql库下,更改允许用户登录的 ip ‘位置’ ,
update user set host = '%' where user = 'root';
改完可以查看一下,
select user,host,plugin,authentication_string from user;
之后会显示用户信息,验证是否更改成功。
然后是添加3306端口。
firewall-cmd --add-port=3306/tcp --permanent
如果防火墙关闭可以开启防火墙
systemctl start firewalld
重新加载防火墙
firewall-cmd --reload
然后呢,然后就是下载远程工具,连接使用了。远程工具有很多,个人推荐DBeaver,开源的,能连接的库超多,还能连接非关系型数据库和大数据数据库。在官网随便下载一个最新版本的,解压或者安装版都行。
运行DBeaver,新建一个连接,这个时候最新版的好处就来了,我们安装的是MySQL8的版本,MySQL为了安全,修改了默认密码插件,我们之前用的都是caching_sha2_password加密的,但是旧版本远程工具一般都会用mysql_native_password加密密码。(这个位置是个大坑)
我们可以选择MySQL8.X来建立连接,更新驱动,填好服务器ip,库名,用户名,密码,测试通过,就ojbk了。
以上都是本人百度后整理的,如果有错误,请私信我或者在下面评论指出,谢谢!!!