Liunx 部署MySQL

本文详细介绍了如何在Linux系统上下载、删除旧版MySQL、安装新版本、修改配置、添加服务、设置账号密码以及处理常见问题的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、安装包下载

二、删除已有的mysql服务

三、解压安装mysql

四、 修改mysql配置文件 

五、添加服务到系统

六、设置账号密码

七、问题处理


一、安装包下载

 下载地址:https://dev.mysql.com/downloads/

图片示意:

点击进去选择想要安装的版本:

二、删除已有的mysql服务

  1.  先查看mysql是否存在,命令如下:  rpm -qa|grep -i mysql
  2. 如果使用这个命令之后没有出现任何内容,表示没有安装过mysql,如果有出现,则删除。
  3. 如果存在,那么停止mysql,删除所有的服务 service mysqld stop
  4. 使用如下命令:find / -name mysql 删除出现的所有文件

三、解压安装mysql

#创建目录
mkdir  /data/

cd /data

# 上传压缩包 解压
tar -zxvf  mysql-8.0.16-el7-x86_64.tar.gz -C /data

# 修改 解压文件夹名称
mv mysql-8.0.16-el7-x86_64 mysql-8.0.16

#进入mysql安装目录
cd mysql-8.0.16

#在mysql-8.0.16目录下新建data文件夹(存储mysql数据)
mkdir data


#创建mysql组
groupadd mysql

#创建mysql用户
useradd -g mysql mysql

#将安装的MySQL目录权限给mysql用户
chown -R mysql.mysql mysql-8.0.16

# mysql初始化   Linux中的MySQL默认是区分表明大小写的,如果安装的是MySQL8,那么不区分大小需要在数据库初始化时设置,不然初始化后,在配置文件在设置重启时是会报错的

./bin/mysqld --user=mysql --basedir=/data/mysql-8.0.16 --datadir=/data/mysql-8.0.16/data --lower-case-table-names=1 --initialize

#使用提示的密码,首次登录
./bin/mysql -hlocalhost -uroot -p

# 修改初始密码
ALTER USER USER() IDENTIFIED BY 'password';

#如果成功登录,exit; 退出后 修改配置文件 
vim /etc/my.cnf

四、 修改mysql配置文件 

 /etc/my.cnf文件内容:(参数自定义)

[mysqld]
bind-address=0.0.0.0
basedir=/data/mysql-8.0.16
datadir=/data/mysql-8.0.16/data/
port=3306
user=mysql
socket=/tmp/mysql.sock

log-error=/data/mysql-8.0.16/data/mysql.err
pid-file=/data/mysql-8.0.16/data/mysql.pid
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
default-storage-engine=INNODB
character_set_server=utf8
lower_case_table_names=1
table_open_cache=128
max_connections=2000
max_connect_errors=6000
innodb_file_per_table=1
innodb_buffer_pool_size=1G
max_allowed_packet=64M
transaction_isolation=READ-COMMITTED
innodb_flush_method=O_DIRECT
innodb_lock_wait_timeout=1800
innodb_flush_log_at_trx_commit=0
sync_binlog=0
group_concat_max_len=1024000
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
skip-name-resolve

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

# include all files from the config directory
#
!includedir /etc/my.cnf.d

五、添加服务到系统

服务名称配置为 mysql或mysqld 和配置文件 /etc/my.cnf下[mysql] 、[mysqld]的参数配置有关,分别对应。例mysqld启动 [mysqld] 下的参数才会生效

# 添加服务到系统 
cp -a ./support-files/mysql.server /etc/init.d/mysqld

#查看mysql服务状态
service mysqld status

六、设置账号密码

# 修改初始密码
ALTER USER USER() IDENTIFIED BY 'password';

#赋予root用户,任意IP登录的权限
update mysql.user set host = '%' where user = 'root';

#给与全部权限
grant all privileges on *.* to root@"%" ;
 
#刷新
flush privileges;

-----------------------------------------------------------------------------

#修改账户密码
alter user 'root'@'%' identified by 'password1';

#创建账户 赋予远程登录权限
create user 'demo'@'%' identified by 'password';

#删除用户(永久,不可撤销)
DROP USER 'demo'@'%';
 

七、问题处理

1、初始化,首次登录报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

#查看mysql服务是否在运行
ps -ef | grep mysql

#如果mysql服务不存在,进入mysql安装目录启动服务
 cd /data/mysql-8.0.16

./support-files/mysql.server start

#如果成功启动即解决,失败的话调整 /etc/my.cnf 文件,删除 [mysqld_safe] 模块配置信息
vim /etc/my.cnf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值