centos 7 安装mysql

centos 7 安装mysql

1.安装前的准备

下载地址
https://www.mysql.com/downloads/
点击下载mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz

1.1 准备mysql的安装包

mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz

1.2 放到linux系统上:

命令:
#放到在/usr/local目录下
cd /usr/local
#上传命令选择安装包
rz 
#解压缩包
tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
#给包重命名为mysql
mv mysql-5.7.21-linux-glibc2.12-x86_64 mysql
#查看mysql目录下有什么东西
[root@bogon mysql]# ll
总用量 626796
drwxr-xr-x.  2 root root       4096 1月   2 01:28 bin
-rw-r--r--.  1 7161 31415     17987 12月 28 2017 COPYING
drwxr-xr-x.  2 root root         55 1月   2 01:28 docs
drwxr-xr-x.  3 root root       4096 1月   2 01:28 include
drwxr-xr-x.  5 root root        229 1月   2 01:28 lib
drwxr-xr-x.  4 root root         30 1月   2 01:28 man
-rw-r--r--.  1 root root  641798603 1月   1 09:22 mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
-rw-r--r--.  1 7161 31415      2478 12月 28 2017 README
drwxr-xr-x. 28 root root       4096 1月   2 01:28 share
drwxr-xr-x.  2 root root         90 1月   2 01:28 support-files

2.配置环境

#查询是否有自带的Mariadb数据库
[root@hdp265dnsnfs ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64
#卸载系统自带的Mariadb
[root@hdp265dnsnfs ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
#检查mysql是否存在
[root@hdp265dnsnfs ~]# rpm -qa | grep mysql
#检查mysql组和用户是否存在,如无创建
[root@hdp265dnsnfs ~]# cat /etc/group | grep mysql 
[root@hdp265dnsnfs ~]#  cat /etc/passwd | grep mysql
#创建mysql用户组
[root@bogon selinux]# groupadd mysql
[root@bogon selinux]# useradd -g mysql mysql
#制定password 为111111
[root@bogon selinux]# passwd mysql
更改用户 mysql 的密码 。
新的 密码:
无效的密码: 密码是一个回文
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
#更改所属的组和用户
[root@bogon local]# chown -R mysql mysql
[root@bogon local]# chgrp -R mysql mysql
#创建data目录
[root@bogon mysql]# mkdir data
[root@bogon mysql]# chown -R mysql:mysql data

这个版本的数据库是没有my.cnf需要创建my.cnf

[root@bogon etc]# touch my.cnf
[root@bogon etc]# vim my.cnf
[root@bogon etc]# cat my.cnf 
#查看配置my.cnf
    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8 
    [mysqld]
    skip-name-resolve
    #设置3306端口
    port = 3306 
    # 设置mysql的安装目录
    basedir=/usr/local/mysql
    # 设置mysql数据库的数据的存放目录
    datadir=/usr/local/mysql/data
    # 允许最大连接数
    max_connections=200
    # 服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB 
    lower_case_table_names=1
    max_allowed_packet=16M
#修改config配置 
vim /etc/selinux/config
image.png
初始化
  #cd到/usr/local/mysql/bin目录,执行如下命令
  bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

3.测试mysql是否能启动******

1. cd到/usr/local/mysql/support-files/

编辑mysql.server,语法为: vim mysql.server

如图:

image

2. 修改basedir和datadir路径

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

如图:

image

3. 保存并退出,如果使用x命令无法保存退出,可以使用wq!保存并强制退出

保存并退出步骤:

先按键盘最左上角的Esc键,

然后按住shift键,并且输入:号

最后输入wq!

回车保存并退出

如图:

image

4. 启动测试

./mysql.server start

如图:

image

如果你看到Starting Mysql SUCCESS!, 说明我们已经成功安装了MySql,因为我们启动成功了,

如果走到了这步成功,继续往下参考,否则需要仔细检查下是什么地方出问题了。

注意:安装仅供参考,如有毛病,还请多包容,每个人的系统或环境有区别。

5.创建软连接******

ln -s /usr/local/mysql/bin/mysql /usr/bin

如图:

image

软连接有啥用,说白了,就是给linux系统加上mysql这个命令,linux系统命令放在/usr/bin下,

与在windows中命令存在C:\Windows\System32目录下一样,windows上命令都是xxx.exe形式,

比如telnet.exe,如果没有这个文件,windows命令窗口使用的时候就会提示命令telnet命令不存在,

这个地方操作,就是为了后面使用mysql命令的时候,能够有这个命令做铺垫。

6创建mysql配置文件******

1. my.cnf配置

首先,如果/etc/my.cnf存在,直接删掉my.cnf

然后,mv /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

编辑,vim /etc/my.cnf

如图:

image

在my.cnf中,找到[mysqld],在此下增加如下配置:

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

character_set_server=utf8

[client]

default-character-set=utf8

同时删掉或注释掉my.cnf文件中的内容:

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

如图:

image

最后保存并退出。

2. mysqld配置

2.1. 拷贝启动文件到/etc/init.d/下并重命令为mysqld

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

2.2. 增加执行权限

chmod 755 /etc/init.d/mysqld

2.3. 检查自启动项列表中没有mysqld

chkconfig --list mysqld

2.4. 如果没有就添加mysqld

chkconfig --add mysqld

2.5. 设置开机启动

chkconfig mysqld on

2.6. 启动测试

service mysqld start

如图:

image

说明我们的配置文件成功,mysql彻底安装完成。

7.重置密码******

1. 修改配置文件my.cnf

vim /etc/my.cnf

2. 找到[mysqld]在之后添加

skip-grant-tables

保存退出

3. 重启mysql服务
service mysqld restart

重启如图:

image

4. 直接登陆mysql而不需要密码

mysql -u root -p (一路直接回车)

进入后的效果:

image

5. 在mysql中输入

update mysql.user set authentication_string=password('123456') where user='root';

6. 刷新权限
flush privileges

如图:

image

7. 退出mysql,到my.cnf中把开始添加的skip-grant-tables注释掉或删掉

8. 重启mysql服务

service mysqld restart

9. 登录

mysql -u root -p

输入密码,即可。

如图:

image

完成以上工作后,我们的mysql算是装完了,但是,想让外界可以通过工具连接还需要设置。

8.工具连接3306端口数据库******

1. 登陆mysql

mysql -u root -p

2. 修改mysql库的user表,将host项,从localhost改为%。

%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip。

注:以下命令建议手动输入,避免不必要的麻烦。

3. use mysql;

4. SET PASSWORD = PASSWORD('123456');

5. update user set host = '%' where user = 'root';

6. select host, user from user;

7. flush privileges;

如图:

image

8. 防火墙开放3306端口
第一种方法:如果你是用的自带的防火墙使用如下命令增加防火墙端口:

root@bogon support-files]# firewall-cmd --add-port=3306/tcp
Warning: ALREADY_ENABLED: '3306:tcp' already in 'public'
success
[root@bogon support-files]# firewall-cmd --list-ports;
80/tcp 22/tcp 3306/tcp
第二种:如果你安装了iptables.使用下面的方法。
编辑iptables文件:

image

在文件中增加3306端口,保存并退出,比如:

image

重启iptables:

语法: service iptables restart

如图:

image

9. 让我们用工具连接试试

输入你数据库所在服务ip, 数据库密码,上面设置的密码是123456,根据你设置而定。

image

一路确定,看到默认效果:

image

通过工具,任意操作数据库。

到此,mysql安装完成。

以上安装仅供参考,不恰当的地方,请多指教,多包含。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,029评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,238评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,576评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,214评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,324评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,392评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,416评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,196评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,631评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,919评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,090评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,767评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,410评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,090评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,328评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,952评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,979评论 2 351