1.解压
tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar (例如解压成 /usr/soft/mysql)
2.创建用户组和用户
groupadd mysql
useradd -r -g mysql mysql
3.创建数据目录并赋予权限
mkdir -p /data/mysql #创建目录
chown mysql:mysql -R /data/mysql #赋予权限
chown mysql:mysql -R /usr/soft/mysql #赋予权限
4.配置my.cnf
vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/soft/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
5.进入mysql的bin目录并初始化
cd /usr/soft/mysql/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/soft/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
cat /data/mysql/mysql.err
6.将mysql.server放置到/etc/init.d/mysql中
cp /usr/soft/mysql/support-files/mysql.server /etc/init.d/mysql
7.启动
service mysql start
ps -ef|grep mysql
8.登录mysql
./mysql -u root -p #mysql安装目录的bin目录下
9.修改密码
SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
10.远程连接问题
use mysql
update user set host = '%' where user = 'root';
FLUSH PRIVILEGES;
配置成这样就可以了,如果还是连接不上,重启下mysql
service mysql restart
注意
如果启动后密码找不到了,可以如下操作
1.在 /etc/my.cnf 中添加 skip-grant-tables,之后保存重启mysql
2.mysql 的bin 目录
./mysql -u root -p
让输密码的直接回车
进入mysql 后
use mysql;
update mysql.user set authentication_string=password('123456') where user='root'; #修改密码成功
flush privileges;
quit
之后将my.cnf 文件中的skip-grant-tables 去除,让后重启