程序员开发实例大全宝库

网站首页 > 编程文章 正文

centos7.4生产环境安装mysql-8.0.11(源码安装)

zazugpt 2024-08-27 00:25:31 编程文章 15 ℃ 0 评论

在linux系统安装软件相对来说还是比较复杂的,而且在生产环境中,我们往往不会使用yum(apt-get)来安装,也尽量不要使用rpm包的安装,因为我们需要清除知道每一个软件的文件,以便日后清除或者维护。我们做游戏服务器时候,数据储存或数据交换时候,最常用的是mysql和redis(免费,你懂的),他们稳定和高效得到广泛使用。

mysql8.11安装:

#查看系统环境

[root@ebs-64724 download]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core) 
[root@ebs-64724 download]# uname -a
Linux ebs-64724 3.10.0-693.21.1.el7.x86_64 #1 SMP Wed Mar 7 19:03:37 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@ebs-64724 download]# 

#下载mysql的tar包

得到mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz源码安装包。

#正式安装

[root@ebs-64724 download]# ll
-rw-r--r-- 1 root root 185646832 Sep 8 2018 jdk-8u181-linux-x64.tar.gz
-rw-r--r-- 1 root root 603019898 May 6 2018 mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
-rw-r--r-- 1 root root 1016272 Apr 25 2018 nginx-1.14.0.tar.gz
-rw-r--r-- 1 root root 1729973 Mar 14 2018 redis-4.0.8.tar.gz
root@ebs-64724 download]# pwd
/root/download

创建mysql用户和用户组,并禁止登入

[root@ebs-64724 download]# groupadd mysql
[root@ebs-64724 download]# useradd -r -g mysql -s /sbin/nologin mysql
[root@ebs-64724 download]#
[root@ebs-64724 download]# cd /usr/local/
[root@ebs-64724 download]# 

正式安装mysql

 [root@ebs-64724 download]# tar zxvf /root/download/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz(注意根据自己存放的tar包路径响应改变)
 [root@ebs-64724 download]# ln -s mysql-8.0.11-linux-glibc2.12-x86_64/ mysql(增加一个软连接)
[root@ebs-64724 download]# cd mysql
[root@ebs-64724 download]# mkdir mysql-files
[root@ebs-64724 download]# chown -R mysql.mysql . (改变当前文件所有者,注意后面那个点)
[root@ebs-64724 download]# ./bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data (无密码安装)
注意:这一步提示“./bin/mysqld:error while loading shared libraries:libaio.so.1:cannot open shared object file:No such file or directory"
就是少了一个依赖包:执行一下: yum install libaio (依赖使用yum安装可以)

出现这个就害怕哈,正常打印而已

[root@ebs-64724 download]# cp -rf /etc/my.cnf /etc/my.cnf.old
[root@ebs-64724 download]# vim /etc/my.cnf (可以把这个清空,加上一下设置)
 [mysqld]
 basedir=/usr/local/mysql
 datadir=/usr/local/mysql/data
 
 skip-grant-tables (这一行很重要)
[root@ebs-64724 download]# 

启动mysql 修改root密码

[root@ebs-64724 download]# ./bin/mysqld_safe --user=mysql &
[root@ebs-64724 download]# ./bin/mysql -uroot -p (提示输入密码直接回车)
#mysql>use mysql;
#mysql>flush privileges;
#mysql>alter user 'root'@'localhost' identified by 'Abc!123D';
#mysql>exit;
[root@ebs-64724 download]# vim /etc/my.cnf (打开my.cnf 去掉‘skip-grant-tables’并修改默认端口,最大连接数据)
 [mysqld]
 basedir=/usr/local/mysql
 datadir=/usr/local/mysql/data
 port=8889
 back_log = 600
 max_connections = 6000
 max_connect_errors = 6000
[client]
 port=8889
[root@ebs-64724 download]

这是启动mysql

[root@ebs-64724 download] ./support-files/mysql.server start (注意启动命令,根据方便是否加入自动启动命令中)
[root@ebs-64724 download] vim ~/.bashrc (把mysql_client前台命令加入到环境变量中)
export PATH=/usr/local/mysql/bin:$PATH

注意安全措施(血淋淋的前车之鉴,我以前mysql被攻破过)

改变mysql默认监听端口,生产环境密码必须复杂。启动iptables

[root@ebs-64724 download]# iptables -I INPUT -j DROP -p tcp --dport 8889 
[root@ebs-64724 download]# iptables -I INPUT -j ACCEPT -p tcp --dport 8889 -s 127.0.0.1 

最后感谢我们伟大的centos和mysql。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表