Mysql 安装 开机自动启动,常见问题

安装

获取mysql 资源库

安装前准备

检查是否已经安装过mysql

rpm -qa | grep mysql

卸载(–nodeps 强制卸载)

rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64

查询所有Mysql对应的文件夹并清除

whereis mysql
find / -name mysql

检查mysql用户组和用户是否存在,如果没有,则创建

cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
groupadd mysql$useradd -r -g mysql mysql
安装mysql

下载tar包 解压 (gz包不要加Z)

tar -xvf

移动并创建文件夹mysql

mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

在/usr/local/mysql目录下创建data目录

mkdir /usr/local/mysql/data

更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限

chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql

配置my.cnf

vim /etc/my.cnf

[mysqld]
#不配置或者IP配置为0.0.0.0,表示监听所有客户端连接。
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/data/mysql.err
pid-file=/usr/local/mysql/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

取消密码验证(需要重启mysql service mysql restart,目前会导致无法远程连接)

#skip-grant-tables

#编译安装并初始化mysql(/usr/local/mysql 目录下)
bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

启动mysql服务器

/usr/local/mysql/support-files/mysql.server start

添加软连接,并重启mysql服务

ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
service mysql restart

使用

#登录(临时密码在data/mysql.err)
mysql -u root -p

修改密码 为admin

SET PASSWORD = ‘admin’;

开放远程连接

mysql>use mysql;
msyql>update user set user.Host=’%’ where user.User=‘root’;

刷新

mysql>flush privileges;

设置开机自动启动

1、将服务文件拷贝到init.d下,并重命名为mysql
[root@localhost /]#
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
[root@localhost /]# chmod +x /etc/init.d/mysqld
3、添加服务
[root@localhost /]# chkconfig --add mysqld
4、显示服务列表
[root@localhost /]# chkconfig --list
常见问题

远程连接不上
检查网络是否能ping通 防火墙是否关闭
检查MySQL配置my.cnf
0.0.0.0,表示监听所有客户端连接 端口是否3306,是否启用 netstat -apn|grep 3306
检查用户访问权限 select host,user from user;
MySQL建用户的时候会指定一个host,默认是127.0.0.1/localhost,那么这个用户就只能本机访问,其它机器用这个用户帐号访问会提示没有权限,host改为%,表示允许所有机器访问(见开放远程连接)。
报caching_sha2_password错误,修改加密规则
#修改加密规则
ALTER USER ‘root’@’%’ IDENTIFIED BY ‘admin’ PASSWORD EXPIRE NEVER;
#更新用户的密码
ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘admin’;
#刷新权限
FLUSH PRIVILEGES;
#重置密码
ALTER USER ‘root’@’%’ IDENTIFIED BY ‘admin’;

猜你喜欢

转载自blog.csdn.net/qq_33431394/article/details/107380048