我需要删除跳过网络来自 MySQL 启动参数
我在 VPS 上的 Centos Linux 上运行 MySQL
有人可以告诉新手如何做到这一点吗?
我想启动和停止 mySQL 服务器,我必须执行以下操作
/etc/init.d/mysqld stop
/etc/init.d/mysqld start
# ps -ef|grep 'mysql'
root 11331 20220 0 10:53 pts/0 00:00:00 grep mysql
root 32452 1 0 Apr02 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --skip-grant-tables --skip-networking
mysql 32504 32452 0 Apr02 ? 00:00:18 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --socket=/var/lib/mysql/mysql.sock --skip-grant-tables --skip-networking
答案1
打开/etc/init.d/mysqld
脚本,找到--skip-networking
参数并将其删除。
答案2
注释 /etc/my.cnf 中的“skip-networking”指令并重新启动 mysqld。
您可以在 my.cnf 中指定其他网络相关的指令,例如:
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/English
bind-address = 172.20.5.2
# skip-networking
重新启动:
service mysqld restart
或者
/etc/init.d/mysqld restart
答案3
跟着白兔走。在某个时候,源自 /etc/init.d/mysqld 的某个脚本必须附加该参数。如果存在,请检查 /usr/bin/mysqld_safe。还要查看这些脚本中包含的文件。
也许我们在这里篡改了安全措施。除非为 mysql root 用户设置了密码,否则 CentOS 是否会添加此行?
答案4
我猜你也是以 root 身份尝试的。我遇到了同样的问题,这个调整对我有帮助:
在 /etc/my.cnf 中更改此行
"user=mysql"
到
"user=root"