二进制mysql安装相关知识

建议安装5.x版本 高版本没安装经验的慎用

1.1 关闭防火墙
systemctl stop firewalld.service #停止firewall
#慎用 systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)

1.2 检查是否安装NySQL,如果安装 卸载之
rpm -qa |grep mysql
yum remove mysql*

1.3 检查是否安装MariaDB,如果安装 卸载之(重要)
rpm -qa |grep mariadb
yum remove mariadb*

1.4 安装mysql依赖包
yum install gcc gcc-c++ openssl openssl-devel libaio libaio-devel ncurses ncurses-devel
yum install -y libaio

1.5 解压mysql安装包
将mysql压缩包copy到服务器 //可指定存放路径
tar -xzvf mysql安装包名 -C /usr/local //解压安装包到 /usr/local目录
cd /usr/local //切换到usr/local目录
ln -sv mysql文件名 mysql //将mysql安装的原版本名链接到 mysql目录

# xxxxx.tar.xz在解压的时候出问题
# 先 xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar
# 然后,再用tar -xvf xxx来解包

# mv mysqlxxx  /usr/local/mysql   移动解压文件到这个目录 

#再做链接 或者重命名  mv mysqlxxx  mysql

 

1.6 创建mysql用户
cd /usr/local/mysql //切换目录到mysql
groupadd -r -g 306 mysql //创建编号306组 组名mysql 编号不能大于500
useradd -g 306 -r -u 306 mysql //创建用户mysql到mysql组
chown -R mysql.mysql /usr/local/mysql/* //修改属组


1.7 创建数据文件夹和日志文件夹
mkdir /opt/mysqlData
mkdir /opt/mysqlLog
chown -R mysql.mysql /opt/mysqlData
chown -R mysql.mysql /opt/mysqlLog

1.8 配置my.cnf
vi /etc/my.cnf //粘贴下面内容
[mysqld]
port=3306
datadir=/opt/mysqlData
log-error=/opt/mysqlLog/mysql-err.log
user=mysql

default_authentication_plugin=mysql_native_password //此项是为了兼容当前的远程连接工具可以连接

[client]
socket=/tmp/mysql.sock

1.9 配置环境变量
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

source /etc/profile

1.10初始化数据库
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/opt/mysqlData
#初始化完成后,会自动为root帐户生成一个初始密码,要记录下来
#密码可在 vi /opt/mysqlLog/mysql_err.log 查看 或在 /usr/local/mysql/log/mysql_err.log

1.11制作启动文件
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
vi /etc/init.d/mysqld
将basedir = 改为 basedir = /usr/local/mysql
将datadir = 改为 datadir = /opt/mysqlData

1.12给予/etc/init.d/mysqld运行权限
chmod 755 /etc/init.d/mysqld
chkconfig --add mysqld

2.1启动mysql
/etc/init.d/mysqld start
停止mysql
/etc/init.d/mysqld stop
service mysqld start //启动mysql【
service mysqld stop //停止mysql
netstat -tnlp //查看是否启动

cd /tmp
touch mysql.sock
chown mysql:mysql mysql.sock
chmod 755 mysql.sock

2.2连接mysql
mysql -hip地址 -u用户名 -p
输入密码
重置新密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

2.3创建远程连接
grant all privileges on *.* to 'root'@'%' identified by '123456';
#CREATE USER 'root'@'%' IDENTIFIED BY '123456'; //8.0以上方法
#grant all privileges on *.* to 'root'@'%' ; //8.0以上方法
grant all privileges on *.* to ‘root'@'%' ;
FLUSH PRIVILEGES;
Ypyz@root


2.4 防火墙配置(centos7 防火墙开启3306)
查看已经开放的端口:
firewall-cmd --list-ports
开启端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent

1、 修改用户密码mysql> alter user 'root'@'localhost' identified by 'youpassword';
或者mysql> set password=password("youpassword");
2、刷新权限mysql> flush privileges;
mysql> help contents

 

解决CentOS7出现的”Failed to start firewalld.service”问题
既然没有启动,于是就执行”systemctl start firewalld”启动,但是又出现”Failed to start firewalld.service: Unit is masked.”错误。继续找解决方法,然后输入”systemctl unmask firewalld.service”。

解决CentOS7出现的”Failed to start firewalld.service”问题
然后再启动”systemctl start firewalld.service”即可解决问题没有报错。

 

/*防火墙是关键 每个系统开启方式不一样
不能开机启动 注意配置 mysql.sock 的权限

*/

 

原文地址:https://www.cnblogs.com/tdcql/p/10329045.html