分类
Ubuntu

Mariadb Server 创建数据库、添加用户、给予权限

创建数据库

CREATE DATABASE 数据库名称 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

创建用户

CREATE USER 'user'@localhost IDENTIFIED BY 'password';  ## 本地访问
CREATE USER 'user'@'%' IDENTIFIED BY 'password';  ## 任意ip访问

给权限

GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@localhost; ## 给单独数据库的权限

GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password'; ## 给全部权限但是该user不能编辑和给予其它用户权限

GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; ## 给全部权限并且该user可以编辑和给予其它用户权限

分类
碎碎念

windows服务器配置apache php mariadb

主要参考这篇文章 https://superuser.com/questions/748117/how-to-manually-install-apache-php-and-mysql-on-windows 很详细

首先安装apache,windows apache有两个选择: ApacheHaus 或者 Apache Lounge

我这里选择ApacheHaus

下载最先版本,解压压缩包可以看到一个readme文件,安装里面的操作步骤可以安装apache

接下来配置php,php要下载安全线程版本,php怎么配置就不说了,主要是编辑一下httpd.conf文件,导入php模块

LoadModule php7_module "c:\php\php7apache2_4.dll"

<IfModule php7_module>

    AddHandler application/x-httpd-php .php
    AddType application/x-httpd-php .php .html
    PHPIniDir "c:\php"
</IfModule>

需要注意的地方:

配置虚拟主机

取消注释httpd.conf文件的 Include conf/extra/httpd-vhosts.conf 一行,然后在这个文件里配置虚拟主机

我的配置文件:

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "C:\Users\Administrator\Desktop\zrdn"
    ServerName zuoridangnian.com
    DirectoryIndex index.php
</VirtualHost>


<VirtualHost *:443>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "C:\Users\Administrator\Desktop\zrdn"
    ServerName zuoridangnian.com
    DirectoryIndex index.php
	  SSLEngine on
    SSLCertificateFile "C:\Apache24\conf\ssl\4261553_zuoridangnian.com_public.crt"
    SSLCertificateKeyFile "C:\Apache24\conf\ssl\4261553_zuoridangnian.com.key"
</VirtualHost>

默认rewrite模块的没开的

取消注释 LoadModule rewrite_module modules/mod_rewrite.so 一行

然后还需要将AllowOverride改为All

分类
技术相关

nodejs连接远程mysql常见问题

Error: connect ETIMEDOUT

应该是mariadb默认只允许本地连接,修改 /etc/mysql/mariadb.conf.d/50-server.cnf 文件

然后将 bind-address 127.0.0.1 改成 0.0.0.0 然后重启mysql

Error: ER_HOST_NOT_PRIVILEGED: Host ‘xxx’ is not allowed to connect to this MariaDB server

这种是你登录的用户只允许本地连接

USE mysql;
SELECT user,host FROM user;

// 这样可以看到你的用户和权限,把localhost改成你的ip或者改成 % 允许所有ip登录

GRANT ALL PRIVILEGES ON *.* TO username@'%' IDENTIFIED BY 'passwd' WITH GRANT OPTION;

上面该权限的代码要注意 用户名 不用加单引号,%要加,密码要加

参见 Configuring database connection results in Error: Host ‘xxxxxxx’ is not allowed to connect to this MySQL server – Atlassian Documentation

分类
Linux 使用笔记

MySQL无法连接远程数据库error 10061

ubuntu18.04下安装的mariadb无法远程连接

修改 /etc/mysql/mariadb.conf.d/50-server.cnf 文件

bind-address 127.0.0.1中的地址改成0.0.0.0

参考地址 https://www.digitalocean.com/community/questions/can-t-connect-to-mysql-server-on-ipaddress-10061