最近安装mysql比较频繁,发现有许多不一样的坑,像是什么Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
等等问题,有的安装方法连mysql.sock都没有,下面总结出一套亲测安装成功的方法:
因为CentOS7无法直接通过yum install -y mysql
安装,所以先wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
后,再执行rpm -ivh mysql57-community-release-el7-10.noarch.rpm
,因为之前先安装了一个7-9的版本,所以报错冲突了,只需要remove一下这个源即可, yum remove mysql-community-server
。
安装完后,输入mysql -u root -p
会报如下错误:
而此时在相应文件下又存在该文件(有些版本不存在该文件,这个问题没有解决,我卸掉换了一个版本):
然后本来想看mysqld的状态,但是也无法找到该文件(报错“/etc/rc.d/init.d/mysqld: No such file or directory”):
于是我就想拉起该进程(service mysqld start
):
然后我再输入:mysql -u root -p后,报错:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)
此时应该找到mysql.log文件查看临时密码(有些版本没有该临时文件,不知道是不是操作问题,有些版本的查看命令也不一样,比如我这个版本的是如下命令):
sudo grep 'temporary password' /var/log/mysqld.log
于是便通过该密码愉快的登陆进去,并且记得及时修改密码。
mysql数据库报错问题解决:
1.
(1055, u"Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'mim.mim_model.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by") [SQL: u'SELECT mim_model.id AS mim_model_id, mim_model.name AS mim_model_name, mim_model.u_id AS mim_model_u_id, mim_model.p_id AS mim_model_p_id, mim_model.image AS mim_model_image, mim_model.remark AS mim_model_remark, mim_model.create_time AS mim_model_create_time, mim_model.format AS mim_model_format, mim_model.file AS mim_model_file, mim_model.version AS mim_model_version, mim_model.token AS mim_model_token
FROM mim_model
WHERE mim_model.p_id = %(p_id_1)s GROUP BY mim_model.format']
找到服务器上面 /etc/my.cnf文件,编辑:
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'