我知道这个命令:
GRANT ALL PRIVILEGES
ON database.*
TO 'user'@'yourremotehost'
IDENTIFIED BY 'newpassword';
但是它只允许我授予特定的IP地址访问这个远程MySQL数据库。如果我想让任何远程主机都可以访问这个MySQL数据库呢?我该怎么做?基本上我要把这个数据库公开,让每个人都能够访问它。
我知道这个命令:
GRANT ALL PRIVILEGES
ON database.*
TO 'user'@'yourremotehost'
IDENTIFIED BY 'newpassword';
但是它只允许我授予特定的IP地址访问这个远程MySQL数据库。如果我想让任何远程主机都可以访问这个MySQL数据库呢?我该怎么做?基本上我要把这个数据库公开,让每个人都能够访问它。
GRANT ALL PRIVILEGES ON *.* TO 'user'@'ipadress'
/etc/mysql/percona-server.cnf
[mysqld]
bind-address=0.0.0.0
$ mysql -u root -p
mysql> GRANT ALL ON *.* to snippetbucketdotcom@'%' IDENTIFIED BY 'tejastank';
mysql> FLUSH PRIVILEGES;
mysql> exit
如果您正在运行EC2实例,请不要忘记在安全组中添加MYSQL / Aurura的入站规则。
打开你的mysql控制台
并执行以下命令(输入你的数据库名,用户名和密码):
GRANT ALL ON yourdatabasename.* TO admin@'%' IDENTIFIED BY 'yourRootPassword';
然后执行:
FLUSH PRIVILEGES;
打开命令行并使用具有root权限
的任何编辑器打开文件/etc/mysql/mysql.conf.d/mysqld.cnf
。
例如:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
然后注释掉以下行:
bind-address = 127.0.0.1
使用以下命令重新启动mysql以反映更改:
sudo service mysql restart
请享受 ;)
GRANT ALL PRIVILEGES ON <database_name>.* TO '<username>'@'%' IDENTIFIED BY '<password>'
然后转到sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf并将行bind-address = 127.0.0.1更改为bind-address = 0.0.0.0vim /etc/mysql/my.cnf
添加:
bind-address = 0.0.0.0
请前往目录 "/etc/mysql/mysql.conf.d",然后编辑文件 "mysqld.cnf"。
$nano mysqld.cnf
bind-address = 127.0.0.1
mysqlx-bind-address = 127.0.0.1
edit to
bind-address = 0.0.0.0
mysqlx-bind-address = 0.0.0.0
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
并在/etc/mysql/mysql.conf.d/mysqld.cnf
中设置绑定地址:
bind-address = 0.0.0.0
然后重新启动mysql守护进程:
service mysql restart
例如在我的CentOS中
sudo gedit /etc/mysql/my.cnf
注释掉以下行
#bind-address = 127.0.0.1
然后执行
sudo service mysqld restart