您的位置:首页 > 数据库 > MariaDB

Linux安装mysql 5.7 不需要删除mariadb的方法 超详细

2020-07-20 04:15 1026 查看

写在前面

今天帮同学在服务器上部署MySQL,因为我们不允许将系统环境做个人化的修改,因此不能使用删除Mariadb的方法。网上的方法大多适用于个人机器,对环境的破坏比较严重,基本就是全局环境下的暴力安装。下面介绍一种可以让普通用户就能自己定制MySQL配置而不影响全局环境的方法,由于是安装成功后才想到的写这篇文章,可能会有疏漏之处,欢迎大家评论指出,我会及时修改。

我的系统环境:CentOS 7

下载MySQL

首先,下载对应版本的MySQL,我下载的是下面这个版本:

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.29-el7-x86_64.tar

然后解压

tar -xvf ./mysql-5.7.29-el7-x86_64.tar

进入目录

cd mysql-5.7.30-el7-x86_64

我为了便于之后的使用,把上面这个目录加在了

~/.bashrc
里面,大家可按需添加

export MYSQL_HOME=你的路径/mysql-5.7.30-el7-x86_64

添加完后别忘了

source ~/.bashrc

创建你的自定义配置文件

cd $MYSQL_HOME
里,首先创建一个data目录
mkdir data

请确保data目录里是空的,如果后续操作你有问题,想重新修改配置并初始化,可能会报data目录不为空的错误,这时候把data目录清空就行了(清空前请三思,别清错了)

之后我们在

$MYSQL_HOME
中创建一个my.cnf文件:
vi ./my.cnf

在my.cnf中输入下段代码:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=你的路径/mysql-5.7.30-el7-x86_64/mysql.sock

[mysqld]
skip-name-resolve
skip-grant-tables	# 这步是为了跳过root的密码验证,如果是你个人使用的话,其实不用密码更方便
#设置3306端口
port = 3306
socket=你的路径/mysql.sock	#这个不需要自己创建,把路径指定好就行

# 设置mysql的安装目录,我用的是刚才bashrc里设置的MYSQL_HOME
# 特别注意,不要直接写$MYSQL_HOME,要打完整的路径,不然mysqld启动时会有奇怪的错误
basedir=改成你的MYSQL_HOME路径
# 设置mysql数据库的数据的存放目录, 这里就是刚才我们创建的data目录的路径
datadir=你的MYSQL_HOME路径/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#lower_case_table_name=1
max_allowed_packet=16M

#plugin所在目录 这步很重要,这个得手动指定,不然会报错。该目录不需要手动创建,在$MYSQL_HOME/lib下面有
plugin_dir=你的MYSQL_HOME路径/lib/plugin

主要配置文件就是上面这个,如果你有自定义的需求,就在上面改配置文件,然后重启mysqld就行了。

运行命令

server启动

关键点:指定你的my.cnf文件,注意是mysqld

$MYSQL_HOME/bin/mysqld --defaults-file=$MYSQL_HOME/my.cnf --user=root

server关闭

直接关掉刚才的mysqld终端,然后用

ps -ef | grep mysql
,把里面mysqld的进程kill掉就好了
kill -9 PID

client启动

$MYSQL_HOME/bin/mysql --defaults-file=$MYSQL_HOME/my.cnf -uroot -p

不需要输密码,也不能改密码,因为之前my.cnf配置文件里跳过了密码验证

简单测试一下,

SHOW DATABASES;


完成。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: