Linux 安装 Mysql-5.7.23-linux-glibc2

文章转自  https://www.cnblogs.com/mujingyu/p/7689116.html

问题1 :my-default.cnf

注意 5.7.23 没有  my-default.cnf

cnf 文件模板

[mysql]  

# 设置mysql客户端默认字符集  

default-character-set=utf8   

socket=/var/lib/mysql/mysql.sock  

[mysqld]  

#skip-name-resolve  

#设置3306端口  

port = 3306   

socket=/var/lib/mysql/mysql.sock  

# 设置mysql的安装目录  

basedir=/usr/local/mysql  

# 设置mysql数据库的数据的存放目录  

datadir=/usr/local/mysql/data  

# 允许最大连接数  

max_connections=200  

# 服务端使用的字符集默认为8比特编码的latin1字符集  

character-set-server=utf8  

# 创建新表时将使用的默认存储引擎  

default-storage-engine=INNODB  

#lower_case_table_name=1  

max_allowed_packet=16M  

所以 可以自行创建   ,然后copy到 /etc/my.cnf

如果忘记了my.cnf 安装在了哪里, 可以使用 whereis my  

问题2:mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists

可以看到问题是mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists

创建这个文件

mkdir /var/lib/mysql
chmod 777 /var/lib/mysql/

问题3: Access dennied for ....

我使用的是Navicat SQL 进行连接 但是 不知道  为什么 总是 报 Access denied.

然后再往上找方法了, 

1) 解决方案一:赋权限:

也就是说 要 mysql  给 连接的电脑 权限, 这样子才能连接。

grant all privileges on *.* to 'root'@'我电脑的ip地址' identified by '密码';

grant all privileges on *.* to 'root'@'%' identified by 'myth';

当然  你要刷新一下 权限   flush privileges;

2) 解决方案二:跳过密码验证。

说是用远程连接的时候需要密码的验证, 所以需要在my.cnf 中添加跳过密码验证

skip-grant-tables

可以先使用 whereis my    找到 my.cnf , 然后再最后一行添加skip-grant-tables   就  okay 了。

3) 把mysql 设置为开机自动启动

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --list

 

 可以设置为开机启动

原文地址:https://www.cnblogs.com/mythdoraemon/p/9515317.html