yum -y remover `rpm -qa | grep mysqld` #清理包含mysql的包yum erase mariadb mariadb-server mariadb-libs mariadb-devel -yuserdel -r mysql #清理MySQL用户信息rm -rf /etc/my* #删除以my开头的文件rm -rf /var/lib/mysql #删除mysql目录
从mysql官网找到mysql的rpm包地址使用wget下载wget 下载mysql.rpm 包wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpmrpm -ivh mysql80-community-release-el7-5.noarch.rpm #解包进入MySQL配置文件修改:配置MySQLyum源vim /etc/yum.repos.d/mysql-community.repo #修改配置文件如下mysql5.7配置nabled=1 #开启5.7的MySQLgpgcheck=0 #关闭密钥认证,如果开启必须修改密钥因为现在密钥过期了mysql8.0配置enabled=0 #关闭5.8的MySQLgpgcheck=1 #密钥认证可以不用管他安装mMySQL数据库:yum -y install mysql-community-server如果安装MySQL时没有关闭GPG密钥认证会安装失败;下载如下密钥即可解决:rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022修改完成后再执行一下mysql安装;----------------------------------------------------------------------------------------------------------------mysql --version #查询mysql版本信息systemctl start mysqld #启动mysql数据库systemctl enable mysqld #设置开机启动grep passswor /var/log/mysqld.log #查看mysql密码 (后期修改的密码过滤不到只能看到初始化的密码)----------------------------------------------------------------------------------------------------------------如果首次启动过滤不到密码,进行如下操作:systemctl stop mysqld #停掉MySQL数据库rm -rf /var/lib/mysql/* #删除MySQL数据库 (这种操作只能再刚安装好时使用其他情况谨慎操作)systemctl start mysqld #重启MySQL数据库
管下载MySQL安装包MySQL官网地址:/www.mysql.com/wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.38.tar.gztar -xvf mysql-boost-5.7.38.tar.gz -C /usr/local/ #解包--指定解压到目录安装编译工具:yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ makeyum -y install cmakemkdir -p /usr/local/mysql/{data,log} #这个目录可以不创建,编译安装好初始化时写的有这个目录会自动创建useradd -r mysql -M -s /etc/false #创建mysql用户不创建家目录和登录权限‘false’也是不可登录;cd /usr/local/mysql-5.7.38 #进入解包好的目录内编译配参考下面代码块MySQL编译配置文件 1.;;编译完成使用 $? 查看编译成功了没有;编译完成后执行:make && amek install -j2 #-j2指定几个处理器执行编译安装加速执行;cd /usr/local/msyql #进入MySQL的目录chown -R mysql.mysql . #吧当前目录和目录下的组和属组设置成MySQL用户#初始化MySQL数据库,初始化完成一定要记住密码因为没有开启log日志时没有记录密码的./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 编译配置查看MySQL编译安装文件 2.;启动数据库:cd /usr/local/mysql./bin/mysqld_safe --user=mysql &配置环境变量:expro PATH=/usr/local/mysql/bin:$PATHsource /etc/profile #刷寻环境变量配置文件
1.在MySQL解压好包的目录下执行cmake . \-DWITH_BOOST=boost/boost_1_59_0/ \-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DSYSCONFDIR=/etc \-DMYSQL_DATADIR=/usr/local/mysql/data \-DINSTALL_MANDIR=/usr/share/man \-DMYSQL_TCP_PORT=3306 \-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DEXTRA_CHARSETS=all \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_READLINE=1 \-DWITH_SSL=system \-DWITH_EMBEDDED_SERVER=1 \-DENABLED_LOCAL_INFILE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1-------------------------------------------------------------------------------------------编译配置解析:提示:boost也可以使用如下指令自动下载,如果不下载bost压缩包,把下面的这一条添加到配置中第二行-DDOWNLOAD_BOOST=1/参数详解:-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 安装目录-DSYSCONFDIR=/etc \ 配置文件存放 (默认可以不安装配置文件)-DMYSQL_DATADIR=/usr/local/mysql/data \ 数据目录 错误日志文件也会在这个目录-DINSTALL_MANDIR=/usr/share/man \ 帮助文档 -DMYSQL_TCP_PORT=3306 \ 默认端口-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ sock文件位置,用来做网络通信的,客户端连接服务器的时候用-DDEFAULT_CHARSET=utf8 \ 默认字符集。字符集的支持,可以调-DEXTRA_CHARSETS=all \ 扩展的字符集支持所有的-DDEFAULT_COLLATION=utf8_general_ci \ 支持的-DWITH_READLINE=1 \ 上下翻历史命令-DWITH_SSL=system \ 使用私钥和证书登陆(公钥) 可以加密。 适用与长连接。坏处:速度慢-DWITH_EMBEDDED_SERVER=1 \ 嵌入式数据库-DENABLED_LOCAL_INFILE=1 \ 从本地倒入数据,不是备份和恢复。-DWITH_INNOBASE_STORAGE_ENGINE=1 默认的存储引擎,支持外键----------------------------------------------------------------------------------------------2.mysql配置文件编辑:vim /etc/my.conf[client]port = 3306socket = /tmp/mysql.sockdefault-character-set = utf8[mysqld]port = 3306user = mysqlbasedir = /usr/local/mysql #指定安装目录datadir = /usr/local/mysql/data #指定数据存放目录socket = /tmp/mysql.sockcharacter_set_server = utf8配置解析参数详解:[client]# 默认连接端口port = 3306# 用于本地连接的socket套接字socket = /tmp/mysql.sock# 编码default-character-set = utf8[mysqld]# 服务端口号,默认3306port = 3306# mysql启动用户user = mysql# mysql安装根目录basedir = /usr/local/mysql# mysql数据文件所在位置datadir = /usr/local/mysql/data# 为MySQL客户端程序和服务器之间的本地通讯指定一个套接字文件socket = /tmp/mysql.sock# 数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用4个字节)character_set_server = utf8
vim /lib/systemd/system/mysqld.service [Unit]Description=MySQL Server#Documentation=man:mysqld(8)#Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html#After=network.target#After=syslog.target[Install]WantedBy=multi-user.target[Service]User=mysqlGroup=mysqlExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnfLimitNOFILE = 5000