关闭防火墙
systemctl stop firewalld systemctl disable firewalld
关闭内核安全机制
sed -i "s/.*SELINUX=.*/SELINUX=disabled/g" /etc/selinux/config reboot
PS:修改完内核安全机制后需要重启机器
部署网络源YUM
mkdir /media/cdrom mount /dev/cdrom /media/cdrom cd /erc/yum.repos.d mkdir bak mv *.repo bak cp bak/CentOS-Media.repo ./ vi CentOS-Media.repo # 修改配置文件 gpgcheck=0 # 将1改为0 enabled=1 # 将0改为1 *********************************** yum clean all yum makecache yum repolist一、编译安装MySQL
查询Mariadb,若有则卸载
rpm -qa | grep mariadb yum -y remove mariadb*
安装gcc与依赖包
yum -y install gcc gcc-* yum -y install ncurses-devel openssl openssl-devel
安装cmake,并执行编译
这里已经将cmake的tar包下载下来传到机器里面,所以直接解压了,需要了可以在网上下载
tar zxvf cmake-3.16.2.tar.gz -C /usr/src/ cd /usr/src/ cmake-3.16.2/ ./configure gmake gmake install
解压boost,并创建用户
这里已经将boost的tar包下载下来传到机器里面,所以直接解压了,需要了可以在网上下载
tar zxvf boost_1_59_0.tar.gz mv boost_1_59_0 /usr/local/boost groupadd mysql useradd -M -s /sbin/nologin mysql -g mysql
安装MySQL
这里已经将MySQL的tar包下载下来传到机器里面,所以直接解压了,需要了可以在网上下载
tar zxvf mysql-5.7.28.tar.gz -C /usr/src/ cd /usr/src/mysql-5.7.28/ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSConFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_BOOST=/usr/local/boost make make install
创建配置文件
[client] socket=/usr/local/mysql/data/mysql.sock [mysqld] socket=/usr/local/mysql/data/mysql.sock #绑定监听地址 0.0.0.0 bind-address = 0.0.0.0 # 跳过域名解析,如果mysql服务器设置了dns服务器,并且客户端ip在dns上并没有相应的hostname,那>么这个过程很慢,导致连接等待 skip-name-resolve #设置 3306 端口 port = 3306 # 设置 mysql 的安装目录 basedir=/usr/local/mysql # 设置 mysql 数据库的数据的存放目录 datadir=/usr/local/mysql/data # 允许最大连接数 max_connections=2048 # 服务端使用的字符集默认为 utf8 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 表名存储在磁盘是小写的,但是比较的时候是不区分大小写 lower_case_table_names=1 # 接收数据包的大小 max_allowed_packet=16M
初始化数据库
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
最后一行显示的则是数据库密码
编写环境变量
vi /etc/profile export PATH=$PATH:/usr/local/mysql/bin
在最后一行添加即可
刷新环境变量
source /etc/profile
添加为系统服务(可以使用systemctl启动MySQL)
cp /usr/src/mysql-5.7.28/support-files/mysql.server /etc/rc.d/init.d/mysqld chmod +x /etc/rc.d/init.d/mysqld chkconfig --add mysqld
重启服务并查看端口是否监听
systemctl daemon-reload systemctl start mysqld netstat -nlpt | grep 3306
登陆MySQL数据库,并修改密码(密码就是初始化数据库后得到的密码)
mysql -u root -p set password=password(‘123’); # 修改密码 flush privileges; # 刷新 exit # 退出数据库
使用新密码重新登陆数据库,能进入即可



