之前的安装是用docker安装的,本来感觉很方便,但是不知道为什么,换了系统之后安装流程不行了。
这次索性就简单不用docker安装了,直接用最传统的方式安装配置。
毕竟我对docker还是不够的熟练,此时上docker,出问题我还是不太会改。
正文
就和win环境一样,我们在服务器上需要先安装,再配置一个软件。
所以,本篇教程分为两个大部分:安装MySQL,配置MySQL。
亲测可用,系统配置:OpenCloudOS 9
,安装流程顺畅,没有什么问题。
安装MySQL
很多人不熟悉Linux,安装的主要麻烦就是安装命令。
所以,这里重新整理
创建目录
切换到根目录创建一个用来存mySql的位置。
1 | cd / |
切换目录
1 | cd /server/soft/mysql |
查看自带数据库
有的系统会在镜像安装时候就自带数据库,我们先检测一下
1 | rpm -qa l grep mari |
如果画框中的内容有,则rpm -e –nodeps XXX删除。
比如,我们这里举例。
1 | rpm -e --nodeps mariadb-connector-c-3.1.11-2.oc8.1.x86_64 |
下载MySQL
切换到目录之后,我们先下载MySQL的压缩包
1 | wget http://dev.mysql.com/get/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar |
解压安装包
1 | tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar |
安装数据库
这里会问你是否同意,y就行了。
1 | rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm |
启动并测试连接
1 | systemctl start mysqld.service |
这里只要检测到mySQL的进程,就可以确认是启动成功了。
1 | mysql 613867 1 0 21:20 ? 00:00:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid |
配置MySQL
好了,就像是win上边,我们终于装好mySQL了。
接下来就是配置时间了。
查看密码
1 | grep "password" /var/log/mysqld.log |
这时候,mysql会帮我们生成一个临时密码,如下提示,我们拿到密码。
1 | A temporary password is generated for root@localhost: xy?pa,n1o%M- |
配置密码
系统生成的密码安全性很强,但是也很难记,所以我们可能需要自己改动出一个好记的密码。
输入如下命令后,需要我们输入自己的密码,记得保存。
1 | mysql -u root -p |
修改密码
当我们输入明码,进入mySQL的之后,需要逐行的输入密码
1 | set global validate_password_policy=0; |
修改完成之后,我们刷新提交修改内容。
1 | flush privileges; |
示例如下,我的密码是123456。
1 | mysql> set global validate_password_policy=0; |
修改host配置
之前我们的配置默认是指向localhost
,这里我们需要把host
改到能给外部访问。
%
是一个通配符,表示任何主机。
这意味着具有root
用户名的用户可以从任何IP地址或主机名连接到MySQL服务器。
通过将其Host
列设置为%
,这种设置通常用于扩展管理员账户的访问权限,使其不仅限于本地主机。
1 | use mysql; |
示例如下
1 | mysql> use mysql; |
MySQL忘记密码了怎么办?
这段的操作我不推荐使用,原文的意思是,修改my.cnf配置。
在skip-grant-tables
配置后,启动MySQL服务器时忽略权限表。
这意味着启动时不需要密码就可以访问数据库。这通常只在恢复或紧急情况下使用,因为这样会使数据库变得不安全。
改完配置文件之后,重新设置密码,然后再删除该
修改配置文件
我们可以通过图形界面直接去etc
文件夹下修改my.cnf
。
我们也可以通过命令行去修改,不过需要你稍微了解一下linux命令行编辑的方式。
这里,我们需要在linux的目录下,如果之前还在mySQL路径里边,记得退出来。
1 | vi /etc/my.cnf |
修改配置如下
1 | # For advice on how to change settings please see |
编辑完成后,:wq
退出编辑
保存退出,重启MySQL
1 | service mysqld restart |
登录数据库
1 | mysql |
修改密码刷新权限
1 | use mysql; |
删除刚刚新增的命令,这里我们需要再删除配置里边的 skip-grant-tables
重新登录
这里我们用新密码重新登录一下,或者是navicat之类的远程工具连一下看看。
只要保证新密码能连接上,那就没问题。
1 | mysql -u root -p |
结语
本来打算用docker简单安装一下就算了,但是换了系统之后,之前的流程反而装不上了。
真是麻烦所以干脆自己再走个流程重新装一下。
本来也想选几个8.0版本的MySQL,但是好几个教程都因为各种问题走不下去。
反而是这个低版本的远古教程,居然意外的好用,于是特此记录下,便于后续使用。
参考
在腾讯云服务器OpenCLoudOS系统中安装mysql(有图详解)_opencloudos 安装mysql-CSDN博客