CentOS 安装MySQL5.7
1.获取压缩文件
wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.*-linux-glibc2.5-x86_64.tar.gz
(点开网址http://mirrors.sohu.com/mysql/MySQL-5.7/查看mysql的版本号,然后把*改为对应的版本。目前安装的是5.7.18)
2.解压
mkdir /usr/local/mysql
tar -xvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.7.18 -linux-glibc2.5-x86_64/* /usr/local/mysql/
3.创建 /usr/local/mysql/data 目录
mkdir /usr/local/mysql/data
4.创建用户赋予权限
groupadd mysql
useradd -r -g mysql mysql -s /sbin/nologin (创建mysql用户并设置不可登录)
chown -R mysql.mysql /usr/local/mysql/
vi /etc/my.cnf
my.cnf 内容如下:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
datadir = /usr/local/mysql/data
tmpdir = /tmp
#Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
5.初始化数据
/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
6.再次修改权限
chown -R mysql.mysql /usr/local/mysql/
7.注册服务
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
8.启动服务
service mysqld start
注释:可能报错,我遇到的问题和解决办法
Starting MySQL… ERROR! The server quit without updating PID file (/usr/local/mysql/data/CentOSVM.pid).
解决办法:
(1)查看/etc/my.cnf中mysql的错误日志在哪:log-error=/var/log/mysqld.log
(2)查看mysqld.log中的错误:2017-05-05T15:20:23.801502Z 0 [ERROR] Could not create unix socket lock file /var/lib/mysql/mysql.sock.lock.
(3)修改/var/lib/mysql/的权限:
chown -R mysql:mysql /var/lib/mysql/
9.修改mysql初始密码
(1)查看初始密码:
cat /root/.mysql_secret
(2)登录mysql:
/usr/local/mysql/bin/mysql -u root -p password(初始的密码)
注释:可能报错,我遇到的问题和解决办法
Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’(2)
解决办法:
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
如果不行请参考:这个哥们的链接,写的还是比较详细的
(3)修改密码:
mysql>SET PASSWORD = PASSWORD(‘your new password’);
mysql>ALTER USER ‘root’@’localhost’ PASSWORD EXPIRE NEVER;
mysql>flush privileges;