1.MySQL安装
预安装环境
yum install gcc gcc-c++ openssl openssl-devel libaio libaio-devel ncurses ncurses-deve
yum -y install numactl
创建mysql用户
#新建mysql用户、mysql用户组,如果之前已经建立过,就不用建立了
groupadd mysql
#给mysql添加用户 为 mysql
useradd mysql -g mysql
解压
tar -zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
**注:*如果安装文件以.tar.xz结尾,解压命令:tar -xvf
建立mysql的安装目录
mkdir /opt/environment/mysql
赋予用户
#将/opt/environment/mysql的所有者及所属组改为mysql
chown -R mysql:mysql /opt/environment/mysql
chmod -R 755 /opt/environment/mysql
进入安装目录,建立数据和错误日志的目录
mkdir data
mkdir log
mkdir tmp
初始化数据库目录
/opt/environment/mysql/mysql-3306/bin/mysqld --initialize --user=mysql --basedir=/opt/environment/mysql/mysql-3306 --datadir=/opt/environment/mysql/mysql-3306/data
添加环境目录
echo "export PATH=$PATH:/opt/environment/mysql/mysql-3306/bin" >> /etc/profile
source /etc/profile
制作配置文件
vim /etc/my.cnf
port=3306
datadir=/opt/environment/mysql/mysql-3306/data
log-error=/opt/environment/mysql/mysql-3306/log/mysql-err.log
user=root
skip-grant-tables #此项是为了装好后免登陆修改密码使用
default_authentication_plugin=mysql_native_password
[client]
socket=/opt/environment/mysql/mysql-3306/tmp/mysql.sock
报错:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/opt/environment/mysql/mysql-3306/tmp/mysql.sock’
mkdir tmp
chmod 777 ./tmp
mkdir mysql-log
chmod 777 ./mysql-log
cd mysql-log
touch error.log
注:也可直接去点前缀路径
制作启动脚本
cp /opt/environment/mysql/mysql-3306/support-files/mysql.server /etc/init.d/mysqld
编辑mysqld
vi /etc/init.d/mysqld
#找到修改
basedir=/opt/environment/mysql/mysql-3306
datadir=/opt/environment/mysql/mysql-3306/data
启动、关闭、重启mysql的命令
/etc/init.d/mysqld start
/etc/init.d/mysqld stop
/etc/init.d/mysqld restart
/etc/init.d/mysqld status
如果报错:Starting MySQL.Logging to ‘/var/log/mariadb/mariadb.log’.
mkdir /var/log/mariadb
touch /var/log/mariadb/mariadb.log
#没有权限 赋予权限即可
chown -R mysql:mysql /var/log/mariadb/
重置root的密码
update mysql.user set authentication_string = '' where user = 'root';
注释掉my.cnf里skip-grant-tables,重启服务
修改密码
use mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY'123456@cP';
flush privileges;
查询修改host信息
select host, user, authentication_string, plugin from mysql.user;
update mysql.user set host = '%' where user = 'root';
注:远程连接时修改host
然后检查3306端口是否开放
netstat -nupl|grep 3306
开放3306端口
firewall-cmd --zone=public --add-port=3307/tcp --permanent