centos8 安装mysql和卸载mysql及遇到的问题

最近在公司内部由原来的window server改进到linux系统,在装mysql的时候遇到一些问题,经过多次尝试终于成功,以下将步骤进行整理,希望能帮助大家
一、卸载步骤
1、查看 mysql 安装了哪些东西

rpm -qa | grep -i mysql

2、有进行卸载,没有继续

yum remove /usr/local/mysql /user/local/mysql57/

3、查看是否卸载干净,执行第一步代码即可
4、查找mysql 的目录

find / -name mysql

5、如果有目录,则进行删除

# 多个中间空格分开
rm -rf /usr/local/mysql /user/local/mysql57

6、删除my.cnf

rm -rf /etc/my.cnf 

7、删除 /var/log/mysqld.log

# 如果不删除这个文件,会导致新安装的 mysql 无法生存新密码,导致无法登陆
rm -rf /var/log/mysqld.log

---------------------------删除完成-----------------------------
二、安装
1、查看linux系统的版本是多少位

[root@centos-linux-8 /]# uname -a
Linux centos-linux-8 4.18.0-80.el8.x86_64 #1 SMP Tue Jun 4 09:19:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

2、官网下载mysql
在这里插入图片描述
注意一定要下对版本号,一个32位,一个64位,否则在安装时会遇到问题

3、卸载系统自带的Mariadb

[root@centos7 src]# rpm -qa|grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
[root@centos7 src]# rpm -e --nodeps  mariadb-libs-5.5.60-1.el7_5.x86_64

4、检查mysql用户组、用户是否存在,不存在则创建

[root@centos7 src]# cat /etc/group | grep mysql 
[root@centos7 src]# cat /etc/passwd | grep mysql
[root@centos7 src]# groupadd mysql
[root@centos7 src]# useradd -g mysql mysql

5、解压、重命名

#进入mysql压缩包地址
cd /usr/local
tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 
mv mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz mysql
cd mysql
mkdir data
chown -R mysql /usr/local/mysql/
chgrp -R mysql /usr/local/mysql/

6、初始化

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

7、新建配置文件my.cnf,启动

# 没有配置文件
vi /etc/my.cnf
# 已经有my.cnf
vim /etc/my.cnf

chown 777 /etc/my.cnf

8、给my.cnf文件添加如下内容

[mysqld]
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
user=mysql
port=51019
symbolic-links=0
lower_case_table_names=1
max_connections=5000
character-set-server=utf8
default-storage-engine=INNODB
max_allowed_packet=16M
sql_mode=NO_UNSIGNED_SUBTRACTION,NO_ENGINE_SUBSTITUTION
# skip-grant-tables 
[mysqld_safe]
# 这个路径要配置正确
log-error=/usr/local/mysql/log/mysqld.log
# 这个路径要配置正确
d-file=/usr/local/mysql/data/mysql.pid

9、启动

[root@centos7 mysql5.7]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@centos7 mysql5.7]# chmod +x /etc/init.d/mysqld
[root@centos7 mysql5.7]# service mysqld start

Starting MySQL.2020-06-29T06:56:05.234601Z mysqld_safe error: log-error set to ‘/usr/local/mysql/log/mysqld.log’, however file don’t exists. Create writable for user ‘mysql’.
The server quit without updating PID file (/usr/local/mysql[FAILED]stance-7sb10bd1.pid).
在这里插入图片描述
使用下面命令进行查看:

# 查看路径,写到配置文件里
find / -name mysqld.log 
# 查看路径写到配置文件里
find / -name mysql.pid:`:q

10、添加环境变量

# 不存在profile
 vi /etc/profile
#存在profile
 vim /etc/profile

# 填写
export PATH=$PATH:/usr/local/mysql/bin;/usr/local/mysql/lib
# 使环境变量生效
source /etc/profile

11、获取初始密码,连接mysql,更改默认密码,允许远程访问

# 获取mysql默认密码
cat /root/.mysql_secret
# Password set for user 'root@localhost' at 2020-01-02 09:09:05 
# zQ>fN/e(lfU; --这个是初始化的密码,第一次登陆的时候用这个登陆
# 初始化密码
mysql -u root -p

提示如下错误:-bash: mysql: command not found
使用如下命令:

```java
alias mysql=/usr/local/mysql/bin/mysql

mysql> flush privileges;
mysql>use mysql;
mysql>select ‘host’ from user where user=‘root’;

-- ERROR 1820 (HY000)
alter user user() identified by "123456";

5.7以上版本修改密码

update mysql.user set authentication_string=‘root’ where user=‘root’;

刷新数据库

mysql> flush privileges;

退出

mysql> quit;

重新登陆即可用新密码

>登陆时报:
>mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

12、报 libncurses.so.5或报 libncurses.so.6网上很多解答都没有解决,在网上找到一个,用使用如下命令即可完美解决

```java
# 清空 
yum clean all
# 安装numactl 64位
yum -y install numactl.x86_64
# 使用此命令完美解决
yum install libncurses*

13、设置远程连接,当配置好之后,使用ip连接报
在这里插入图片描述
14、设置远程方法

mysql -u root -p

mysql>select user,host from user;
mysql>update user set host="%" where user="root";
mysql>flush privileges;
# 再次连接即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

A吴广智

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值