Centos 7.2 上的 MySql

Centos 7.2 上的 MySql

我在 CentOS 7.2 实例上通过二进制文件安装 MySql 时遇到 MySql 5.7 版本问题。

groupadd mysql
useradd -r -g mysql -s /bin/false mysql
cd /usr/local
tar zxvf /path/to/mysql-VERSION-OS.tar.gz
ln -s full-path-to-mysql-VERSION-OS mysql
cd mysql
mkdir mysql-files
chown mysql:mysql mysql-files
chmod 750 mysql-files
bin/mysqld --initialize --user=mysql  ( it will generate  password for root user)
bin/mysqld --user=mysql  ( It will start the mysql)
  1. 打开另一个 Mysql 会话。转到 /usr/local/mysql,然后输入之前记录的 root 密码
/usr/local/bin/mysql -u root -p -h 127.0.0.1
  1. 安装 mysql 后,我创建一个数据库“databaseDB”
ALTER USER 'root'@'localhost' IDENTIFIED BY 'xxxxx’;
CREATE USER mysql;
SET PASSWORD FOR mysql = PASSWORD ('yyyyy');
create database databaseDB DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
grant all on databaseDB.* to mysql@'%';
grant all on looker_tmp.* to mysql@'%';
flush privileges;
exit;

但是,当我尝试以 root 用户身份连接数据库时:

/usr/local/mysql/bin/mysql -u root -p

或 mysql 用户:

/usr/local/mysql/bin/mysql -u mysql -p

我收到以下套接字错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

我确认数据库正在运行:

[root@looker-mysql-automation-484606751-1-524514057 ~]# ps aux | grep mysql

root      18778  0.0  0.0 110528 12828 ?        Ss   02:47   0:00 /sbin/dhclient -H looker-mysql-automation-484606751-1-524514057 -q -lf /var/lib/dhclient/dhclient--eth0.lease -pf /var/run/dhclient-eth0.pid eth0

mysql     80767  0.0  0.6 1183088 184448 pts/0  Sl+  13:21   0:04 /usr/local/mysql/bin/mysqld --user=mysql

root      87503  0.0  0.0 112652   972 pts/3    S+   15:24   0:00 grep --color=auto mysql

我可以使用以下方法连接到数据库:

/usr/local/mysql/bin/mysql -u root -p -h 127.0.0.1

有什么想法吗?谢谢

答案1

您的 MySQL 实例只监听本地接口,没有unix套接字我们大多数时间都习惯于进行连接。

第一的你应该保证你的mysqld--socket从命令行或配置文件中以有效选项开始。

第二,更奇怪的是,在任何基于 RedHat 的系统中安装存储库之外的东西时应该小心,因为 SELinux 可能会抱怨。

验证套接字是否确实在/tmp,如果不在,则查找套接字:

find / -name 'mysql.sock'

进而恢复控制

restorecon /tmp/mysql.sock

这应该可行。如果你很着急,可以暂时禁用 SELinux:

setenforce=0

然后再试一次。

这里有一个很好的解释:https://blogs.oracle.com/jsmyth/selinux-and-mysql

相关内容