承德专业做网站,快速搭建网站vue,东莞网站建设的价格,WordPress如何设置站点名称引言熟悉的小伙伴都知道我自用有一台NAS#xff0c;并为此折腾了不少内容#xff1a;西蒙宫#xff1a;折腾#xff0c;用J3455搭建家庭nas西蒙宫#xff1a;让家庭NAS走向世界#xff0c;兼谈Zerotier西蒙宫#xff1a;折腾——组装NAS编译安装ffmpeg在NAS上部署了Next…引言熟悉的小伙伴都知道我自用有一台NAS并为此折腾了不少内容西蒙宫折腾用J3455搭建家庭nas西蒙宫让家庭NAS走向世界兼谈Zerotier西蒙宫折腾——组装NAS编译安装ffmpeg在NAS上部署了Nextcloud与Seafile文件服务以及Jellyfin影音服务等内容其中不少服务都依赖mysql数据库然而这台nas总是命途多舛最近又一次意外断电导致mysql服务又挂了。原因挺容易理解mysql对数据的操作非常精密一旦断电内存中的数据来不及写入硬盘就容易发生错误。于是我陷入了沉思...忽然脑中电光一闪能不能在闲置VPS上部署一个数据库让家庭NAS的所有服务都使用远程数据库呢因为VPS不会断电所以上面的数据库比较安全。开源Mariadb是oracle的mysql数据库的有力替代品而且mariadb对mysql的各个api兼容非常好所以考虑使用Mariadb咯。数据库的部署Mariadb的安装在ubuntu 18.04上可以参考这里。简要步骤如下首先更新库信息sudo apt update官方库里就有mariadb直接安装sudo apt install mariadb-server数据库服务会自动开始可以通过以下命令查看sudo systemctl status mariadb可以使用下面的命令查看mariadb的版本mysql -V接下来有个重要步骤关系到服务器的安全sudo mysql_secure_installation命令执行后需要回复一些问题并设置数据库root密码各位按需回答yes或no就可以了这里略过。安装完成后可以尝试连接数据库mysql -u root -p至此mariadb的安装过程结束。配置远程访问一般的mysql的配置文件是在/etc/mysql/my.cnfmariadb也可找到这个文件仔细阅读该文件的注释内容可以知道mariadb的配置项集中于另一文件其路径如下使用vi打开vi /etc/mysql/mariadb.conf.d/50-server.cnf将绑定ip地址从127.0.0.1改为0.0.0.0同时更改绑定端口号从3306改为你想要的一个数值例如33606注意不要使用被防火墙保护的端口。更改完毕后重启数据库应用配置文件service mysql restart创建数据库和用户配置权限接下来就很正常的配置新用户、数据库和配置权限。1.登录Mysql[rootxufeng Desktop]# mysql -u root -p
Enter password: 2.添加新的用户允许本地 IP访问localhost的Mysql数据库MariaDB [(none)] create user editestlocalhost identified by editest123456;
Query OK, 0 rows affected (0.06 sec)允许外网IP访问数据库editest本命令包含上面的命令是所有的IP都可以访问该数据库MariaDB [(none)] create user editest% identified by editest123456;
Query OK, 0 rows affected (0.00 sec)用户创建完成后刷新授权MariaDB [(none)] flush privileges;
Query OK, 0 rows affected (0.00 sec)3.创建一个新的数据库并使用show databases命令查看数据库是否创建OKMariaDB [(none)] create database editestdb DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
Query OK, 1 row affected (0.01 sec)MariaDB [(none)] show databases;
--------------------
| Database |
--------------------
| information_schema |
| confluence |
| editestdb |
| mysql |
| performance_schema |
| sys |
--------------------
6 rows in set (0.00 sec)4.将改用户editest赋权给数据库editestdb并刷新授权MariaDB [(none)] grant all privileges on editestdb.* to editestlocalhost identified by editest123456 with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)MariaDB [(none)] grant all privileges on editestdb.* to editest% identified by editest123456 with grant option;
Query OK, 0 rows affected, 1 warning (0.01 sec)MariaDB [(none)] flush privileges;
Query OK, 0 rows affected (0.00 sec)5.退出 root 重新登录使用editest登录检查本地登录是否正常输入密码后正常登录并使用show databases命令查看数据库赋权是否正常。[rootxufeng Desktop]# mysql -u editest -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 7
Server version: 5.7.22 MySQL Community Server (GPL)Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type help; or h for help. Type c to clear the current input statement.MariaDB [(none)] show databases;
--------------------
| Database |
--------------------
| information_schema |
| editestdb |
--------------------
2 rows in set (0.00 sec)6.验证远程IP地址登录是否正常使用MySQL Workbench配置数据库并进行验证OK至此结束。欢迎交流讨论~