avatar

目录
linux断网安装MySQL操作步骤

linux 安装mysql5.7.x操作步骤

1.下载MySQL安装包

由于官网下载比较慢,暂时我这边采用的方法是通过网易云的centos镜像下载的地址是

html
1
http://mirrors.163.com/mysql/Downloads/MySQL-5.7/

然后手动下载 mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz 文件

通过xftp或者其他工具上传到 /usr/local 目录下面

微信截图_20200120163339.png

然后开始解压和创建目录

shell
1
2
3
4
5
cd  /usr/local
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql
cd mysql
mkdir data log

以上就完成了mysql的软件的上传步骤

2.创建用户组mysql,创建用户mysql并将其添加到用户组mysql中,并赋予读写权限

shell
1
2
3
4
5
6
7
8
9
10
11
12
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql mysql/
chgrp -R mysql mysql/
mkdir /home/mysql

su - mysql
如果出现-bash-4.2$的问题解决办法 如果直接cp配置文件报错,那就切换root用户 命令:su
cp /etc/skel/.bashrc /home/mysql/
cp /etc/skel/.bash_profile /home/mysql/
source ~/.bashrc
就可以解决

3.创建配置文件

打开MySql配置文件

shell
1
vi /etc/my.cnf

把已经存在的注释,或者cp之前的文件备份也行

java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
[client]
#客户端配置
port = 3306
socket =/usr/local/mysql/data/mysql.sock

[mysqld]

character_set_server=utf8
init_connect='SET NAMES utf8'
#安装目录
basedir=/usr/local/mysql
#数据库存放目录
datadir=/usr/local/mysql/data

#为MySQL客户端程序和服务器之间的本地通讯指定一个套接字文件
socket=/usr/local/mysql/data/mysql.sock


##错误日志:记录启动,运行,停止mysql时出现的信息
log-error=/usr/local/mysql/log/mysqld.log

#如果存在,再次start时会报已经启动
pid-file=/usr/local/mysql/data/mysqld.pid

#linux下要严格区分大小写,windows下不区分大小写
#1表示不区分大小写,0表示区分大小写
lower_case_table_names = 0

#默认sql模式,严格模式
#sql_mode = ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,
#NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#ONLY_FULL_GROUP_BY
#NO_ZERO_IN_DATE 不允许年月为0
#NO_ZERO_DATE 不允许插入年月为0的日期
#ERROR_FOR_DIVISION_BY_ZERO 在INSERT或UPDATE过程中,如果数据被零除,则产生错误而非警告。如 果未给出该模式,那么数据被零除时MySQL返回NULL
#NO_ENGINE_SUBSTITUTION 不使用默认的存储引擎替代

sql_mode= STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION


# mysql服务器最大连接数值的设置范围比较理想的是:服务器响应的最大连接数值占服务器上限连接数值的比例值在10%以上
# Max_used_connections / max_connections * 100%
max_connections = 512
# 阻止过多尝试失败的客户端,如果值为10时,失败(如密码错误)10次,mysql会无条件阻止用户连接
max_connect_errors = 1000000
max_connections=5000
default-time_zone = '+8:00'

#表描述符缓存大小,可减少文件打开/关闭次数,一般max_connections*2。
table_open_cache = 1024
#MySQL 缓存 table 句柄的分区的个数,每个cache_instance<=table_open_cache/table_open_cache_instances
table_open_cache_instances = 32
#mysql打开最大文件数
open_files_limit = 65535

#是MySQL执行排序使用的缓冲大小。如果想要增加ORDER BY的速度,首先看是否可以让MySQL使用索引而不是额外的排序阶段
#如果不能,可以尝试增加sort_buffer_size变量的大小
sort_buffer_size = 16M

保存退出 insert键切换命令模式,Esc + : + wq

4.初始化mysql数据库

初始化之前,需要先安装MySql依赖包libaio

同上,将libaio的rpm包上传到 usr/local 目录下

libaio

安装rpm包

shell
1
rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm

初始化MySQL

shell
1
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US

5.查看初始化密码

shell
1
cat /usr/local/mysql/log/mysqld.log | grep 'password'

记下这个密码,待会登录MySQL使用

6.启动服务,进入mysql,修改初始密码,运行远程连接(这里执行完后,密码将变成:你设置的新密码)

切换用户

shell
1
su - mysql

启动服务

shell
1
/usr/local/mysql/support-files/mysql.server start

登录MySQL

shell
1
/usr/local/mysql/bin/mysql -uroot -p

输入刚刚记下的密码

修改新密码,root可以自己定义

sql
1
set password=password('root');

更新权限

sql
1
flush privileges;

修改用户表

sql
1
update mysql.user set authentication_string= password ('root') WHERE User='root';
sql
1
UPDATE mysql.user  set Host='%' where `User`='root';

更新

sql
1
flush privileges;

7.开机自启动

设置之前先切换到root用户,不然会报权限错误,命令:su

shell
1
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
shell
1
chkconfig --add mysqld

8.使用service mysqld命令启动/停止服务

切换到MySQL用户

shell
1
su - mysql
shell
1
2
#启动/停止/重启服务
service mysqld start/stop/restart

9.添加系统路径

shell
1
vim /etc/profile

添加

Code
1
export PATH=/usr/local/mysql/bin:$PATH

更新

shell
1
source /etc/profile

最后使用数据库连接工具测试连接

完成

文章作者: MengW9
文章链接: http://yoursite.com/2020/01/20/linux%E6%96%AD%E7%BD%91%E5%AE%89%E8%A3%85MySQL%E6%93%8D%E4%BD%9C%E6%AD%A5%E9%AA%A4/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 梦里梦外

评论