Linux云服务器卸载安装MySql

登录之后首先更新Linux服务器到最新状态

yum -y update

更新之后重启下服务器

 reboot

第一步:更新之后查看当前安装mysql情况

rpm -qa|grep -i mysql

可以看到如下图的所示:
在这里插入图片描述
显示之前已经安装过了,需要卸载掉重新安装
第二步:停止mysql服务、删除之前安装的mysql
删除命令:rpm -e –nodeps 包名
在这里插入图片描述
删除出现提示依赖包错误,则使用以下命令尝试

rpm -e –nodeps 包名 --nodeps

一条条卸载后 /etc/my.cnf 文件不会删除,需要进行手工删除

rm -rf /etc/my.cnf

删除完成后再次查看

rpm -qa|grep -i mysql

在这里插入图片描述
第三步:删除之前mysql的文件
输入命令查看:find / -name mysql
再根据: rm -rf 包名 将其删除干净

这样Mysql就清理干净了

第四步:检查系统中是否已经安装了MariaDB
(MariaDB数据库是MySQL数据库的一个分支,一般CentOS 7系统中会默认安装该数据库)

yum list installed | grep mariadb

如果有输入命令: yum remove 包名 进行删除
因为我这儿没有MariaDB数据库 ,所以就在网上找了一个删除MariaDB数据库的命令图片。
在这里插入图片描述
这样删除成功之后就可以选择安装了

简单版安装Mysql

1.下载MySql安装包

 rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

2.安装MySql

 yum install -y mysql-server

如果显示以下内容说明安装成功

Complete!

3.设置开机启动Mysql

systemctl enable mysqld.service

4.检查是否已经安装了开机自动启动

systemctl list-unit-files | grep mysqld

如果显示以下内容说明已经完成自动启动安装

mysqld.service enabled

5.启动

systemctl start mysqld.service

6.查看MySql默认密码

grep 'temporary password' /var/log/mysqld.log

如果这里找不到log文件,可以设置root的初始密码
./usr/bin/mysqladmin -u root password 'root' root账户设置初始密码为root

7.登陆MySql,输入用户名和密码

mysql -uroot -p

8.设置密码的验证强度等级

set global validate_password_policy=LOW;

9.当前密码长度为 8 ,如果不介意的话就不用修改了,按照通用的来讲,设置为 6 位的密码,设置 validate_password_length 的全局参数为 6

set global validate_password_length=6; 

10.修改当前用户密码

MySQL版本5.7.6版本以前用户可以使用如下命令:

 SET PASSWORD = PASSWORD('你的密码'); 

MySQL版本5.7.6版本开始的用户可以使用如下命令:

 ALTER USER USER() IDENTIFIED BY '你的密码';

11.开启远程登录,授权root远程登录

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

提示如下错误:ERROR 1064(4200): you have an error in you SQL syntax; **near ‘identified ‘123456’’ at line 1
解决:
运行:GRANT ALL ON *.* TO 'root'@'%'
报错:ERROR 1410 (42000): You are not allowed to create a user with GRANT
解决:update user set host = '%' where user = 'root';
然后更新用户加密方式:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
如果需要支持 root - localhost可以使用插入语句:insert user (user, host, ssl_cipher, x509_issuer, x509_subject) values('root', 'localhost', '', '', '');

12.命令立即执行生效

flush privileges;

如果安装完mysql使用systemctl start mysqld.service 启动
启动mysql报错 203
在这里插入图片描述

**方案一:**需要将/usr/lib/systemd/system/mysqld.service 服务迁移至 /etc/systemd/system 重新启动
或者
**方案二:**将/usr/lib/systemd/system/mysqld.service文件中的 User 和 Group 指定mysql注释
并且将启动命令更改为 ExecStart=/usr/sbin/mysqld --user=root

复杂版安装mysql

mysql 官网 :https://dev.mysql.com/

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
查询操作系统:

cat /etc/redhat-release

查询系统位数:

uname -m

ldd -version

在这里插入图片描述
下载完成之后就可以在Linux中进行安装了
上传安装
1.先安装依赖包
检查系统中是否已经安装了libaio依赖包 :

yum list installed | grep libaio

如果没有安装该依赖包,则进行安装:

yum install libaio

2.检查系统中是否已经安装libnuma依赖包(MySQL 5.7.19及以上版本还需要安装libnuma依赖包):

yum list installed | grep numactl

如没有安装,可使用以下命令进行安装:

yum install numactl

因为 yum 默认安装的libnuma.so.1是32的,这里需要的是64位的,
所以需要删除并安装64位的
删除命令: yum remove libnuma.so.1
安装64命令:yum -y install numactl.x86_64

3.然后在home目录下创建mysql文件夹用来存放安装包

mkdir /home/mysql

在这里插入图片描述
4.将下载好的安装包放入文件夹下,我这里用的finalShell直接拉进来

在这里插入图片描述
5.完成之后进行解压

tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz

在这里插入图片描述
文件名改成mysql

mv mysql-5.7.28-linux-glibc2.12-x86_64 mysql 

在这里插入图片描述
6.创建mysql账户

useradd -r mysql

创建成功之后进入到mysql

cd mysql

修改账户权限:

chown -R mysql:mysql ./

在这里插入图片描述
查看账户权限

ls -la

在这里插入图片描述

7.在mysql目录下安装mysql数据库

 bin/mysqld --initialize --user=mysql --basedir=/home/mysql/mysql --datadir=/home/mysql/mysql/data

在这里插入图片描述
如上图就安装成功了,最后那个就是初始化密码: L!M3sDJS)XIw

8.创建RSA private key,安装SSL

bin/mysql_ssl_rsa_setup --datadir=/home/mysql/mysql/data

执行完成之后会在data目录下生成以下pem文件
这些文件就是用于启用SSL功能的
在这里插入图片描述
进入mysql

 cd /home/mysql/mysql

修改data目录拥有者为mysql

 chown -R mysql:mysql data

配置mysql的my.cnf配置文件
先查找my.cnf文件的位置

locate my.cnf

在这里插入图片描述
然后编辑复制下面文本添加到 my.cnf文件中

[client]
port = 3306
default-character-set=utf8

[mysqld]
basedir = /home/mysql/mysql
datadir = /home/mysql/mysql/data
port = 3306
character-set-server=utf8
default_storage_engine = InnoDB
lower_case_table_names = 1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

如果启动失败可以跟换my.cnf内容(路径自行更换):

[mysqld]
 
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
 
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
 
# These are commonly set, remove the # and set as required.
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /tmp/mysql.sock
log-error = /usr/local/mysql/data/error.log
pid-file = /usr/local/mysql/data/mysql.pid
port = 3306
#lower_case_table_names = 1
# server_id = .....
# socket = .....
#lower_case_table_names = 1
max_allowed_packet=32M
default-authentication-plugin = mysql_native_password
#lower_case_file_system = on
#lower_case_table_names = 1
log_bin_trust_function_creators = ON
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 
 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

配置mysql服务,执行命令:

cp /home/mycql/mysql/support-files/mysql.server  /etc/init.d/mysqld

编辑 /etc/init.d/mysqld文件,执行命令:

vim /etc/init.d/mysqld

在这里插入图片描述
启动mysql

service mysqld start

登录mysql,登录密码就之前的初始化密码

./mysql -uroot -p   

修改密码

set password=password('root123');

设置远程访问

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '访问密码';
#刷新权限
flush privileges;

如果失败就执行下面命令:

CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';    

如果创建报错就执行删除刷新 :drop user 'root'@'%'; flush privileges; 一直重复删除刷新直到可以创建成功

GRANT ALL ON *.* TO 'root'@'%';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
 FLUSH PRIVILEGES;

开放端口

``
`
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT


设置开机启动Mysql

systemctl enable mysqld.service


chkconfig --list #查看自动启动服务列表
chkconfig --add mysql #添加mysql服务到自启服务
chkconfig mysql on #设置自动启动

设置环境变量(将mysql/bin目录设置到环境变量中)

vim /etc/profile #编辑配置文件

mysql environment

export MYSQL_HOME=/usr/local/mysql
export PATH= P A T H : PATH: PATH:MYSQL_HOME/bin

source /etc/profile #更新环境变量












评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值