MySQLUbuntu 安装部署 MySQL
Posted Fxtack
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQLUbuntu 安装部署 MySQL相关的知识,希望对你有一定的参考价值。
Ubuntu 安装部署 mysql
文章目录
一. 介绍
本文主要记录如何在 Ubuntu 的云服务器上安装部署单体 MySQL。
注意!
不是 MariDB!
不是 MariDB!
不是 MariDB!
二. MySQL 安装部署
1. 安装 mysql-server
Ubuntu 中使用下列语句安装 mysql 服务端。
$ sudo apt install mysql-server
2. 初始化 mysql
输入以下指令。
$ mysql_secure_installation
然后 mysql 开始问你问题。第一个问题是你要不要设置密码安全组件,如果设置的话,你后续设置的密码可以进行一些基础设置,例如密码不得短于多少,至少得含有多少字母,等。为了避免不必要的麻烦,我没有 yes。
然后要求你给 mysql 的 root 用户设置一个新密码。并确认密码(输入两次)。
接下来问你要不要把默认的用户给删了,也就是无密码登录的这个用户。
然后问你要不要禁止 root 用户在远程主机上登录到数据库呢。注意问的是是否要禁止,如果回答 y 那就禁止了。
然后问你要不要把测试数据库给删了。你要是不确定可以选择 n 不删除,初始化完成后去看看测试数据库里面会不会有你存了的数据,再来决定要不要把测试数据库给删了。
下一个问题,要不要现在重新加载权限表。
回答了,mysql 初始化成功。
3. 创建远程登录用户
用 root 用户登录进去并创建用于远程登录的 admin 用户。先用 root 用户登录进去。
$ mysql -u root -p
然后输入你初始化的时候给 root 设的密码。然后进去之后创建用户 admin 并允许所有 ip 使用 admin 用户登录。并给 admin 用户以所有库,所有表的所有权限。
#创建可由所有 ip 登录的用户 admin,设置密码为 password
create user 'admin'@'%' identified by 'password';
#给予 admin 用户所有库所有表的所有权限
grant all privileges on *.* to 'admin'@'%';
#刷新权限
flush privileges;
然后这个用户就创建好了,可以通过下面的 SQL 查看数据库中的用户以及权限。
use mysql;
select * from user\\G
4. 用 navicat 远程连接 mysql
这里有个天坑,就是用navicat 连接mysql 的时候你会发现连不上,显示下面的 10061 错误。(服务器的公网 ip 打码了)
解决方法很简单。在我们的服务器上做一个配置。我的配置位置在 /etc/mysql
下。按道理会有一个 my.cnf
的文件。用 vim 编辑这个文件,在后边加上如下图的属性。
其中我只加了 [mysqld]
与 bind-address=0.0.0.0
,上面一大段的蓝色备注内容,以及最前面两段白色配置是本来就有的。此外注意加的东西是 [mysqld] 有一个 d。
然后保存退出文件,重启 mysql 的服务。
$ systemctl restart mysql
然后再在远程主机使用 navicat 连服务器的 mysql 就可以了。
三. Navicat 远程连接测试
使用 Navicat 对云服务器上的 MySQL 连接测试。连上点开 mysql 表一看,有数据,没问题。
但是因为是远程服务器上的 MySQL 所以操作都会受到网络带宽的影响,所以如果遇到执行 SQL 很久很可能是网络的问题。
以上是关于MySQLUbuntu 安装部署 MySQL的主要内容,如果未能解决你的问题,请参考以下文章