10bet网址
MySQL集群NDB 8.0
相关的文档10bet官方网站 下载这个摘录
PDF (Ltr)- 4.6 mb
PDF (A4)- 4.6 mb


6.19.3 NDB集群和MySQL安全程序

在本节中,我们将讨论MySQL标准安全程序,因为它们适用于运行NDB集群。

一般来说,任何标准程序运行MySQL安全地也适用于运行MySQL服务器作为NDB集群的一部分。首先,你应该总是运行MySQL服务器mysql操作系统用户;这是没有不同于运行MySQL在标准(非集群)环境。的mysql系统帐户应该是独特的和明确的。幸运的是,这是默认行为新的MySQL安装。你可以验证mysqld运行的过程mysql操作系统用户使用系统命令如所示:

10467 ps辅助| grep mysql >根0.0 - 0.1 3616 1380分/ 3 S由0:00 \ /bin/sh。/ mysqld_safe——ndbcluster ndb-connectstring = localhost: 1186 mysql 10512 0.2 - 2.5 58528 26636分/ 3 Sl由0:00 \ /usr/local/mysql/libexec/mysqld——basedir = / usr /地方/ mysql \——datadir = / usr /本地/ mysql / var——用户= mysql——ndbcluster \ ndb-connectstring = localhost: 1186 - pid文件= / usr /地方/ mysql / var /摩斯拉也。pid \——日志错误= / usr /地方/ mysql / var /摩斯拉也。犯错jon 10579 0.0 - 0.0 2736 688分/ 0 + 54所以0:00 grep mysql

如果mysqld流程正在运行任何其他用户mysql,你应该立即关闭和重新启动它mysql用户。如果这个系统上的用户不存在,mysql应该创建用户帐户,用户应该的一部分mysql用户组;在这种情况下,您还应该确保MySQL数据目录在这个系统上(如设置使用——datadir选择mysqld)是拥有的mysql用户,SQL节点的my.cnf文件包括用户= mysql(mysqld)部分。或者,您可以启动MySQL服务器进程——用户= mysql在命令行上,但它更倾向于使用my.cnf选项,因为你可能会忘记使用命令行选项等mysqld作为另一个用户无意中运行。的mysqld_safe启动脚本力量运行的MySQLmysql用户。

重要的

从来没有运行mysqld随着系统的根用户。这样做意味着潜在的系统上的任何文件可以读取到MySQL,和因此所MySQL是被攻击者。

就像前面提到过的部分(见部分6.19.2,“NDB集群和MySQL特权”),你应该设定一个MySQL服务器的root密码当你运行。你也应该删除默认安装的匿名用户帐户。您可以使用以下语句:完成这些任务

$ > mysql - u root mysql >更新mysql。用户- >设置密码=密码(“secure_password”)- >用户=“根”;mysql >删除从mysql。用户- >用户= ";mysql >冲洗特权;

执行时非常小心删除语句不省略在哪里条款,或者你删除的风险所有MySQL用户。一定要运行冲洗的特权一旦你修改了声明mysql.user表,以便更改立即生效。没有冲洗的特权,更改不生效,直到下一次重新启动服务器。

请注意

许多NDB集群等公用事业ndb_show_tables,ndb_desc,ndb_select_all也没有身份验证,可以揭示表名、模式和数据。默认情况下这些都是安装在unix形式系统的权限wxr-xr-x(755年),这意味着他们可以执行的任何用户都可以访问mysql / bin目录中。

看到第五章,NDB集群项目关于这些工具的更多信息。