Linux学习13-CentOS安装mysql5.6环境

前言

在linux上安装mysql5.6版本,并远程连接mysql数据库操作

安装mysql

mysql的安装可以用yum安装更方便

[root@yoyo ~]# cd /usr/local/ [root@yoyo ~]# mkdir mysql-community-release [root@yoyo ~]# cd mysql-community-release [root@yoyo ~]# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm [root@yoyo ~]# rpm -ivh mysql-community-release-el7-5.noarch.rpm [root@yoyo ~]# yum -y install mysql-community-server

安装完成后查看版本号:mysql -V

[root@yoyo local]# mysql -V mysql  Ver 14.14 Distrib 5.6.42, for Linux (x86_64) using  EditLine wrapper

安装完成后重启mysql服务,查看状态是 Active: active (running) ,说明启动成功

启动服务:service mysqld restart

[root@yoyo local]# service mysqld restart

查看mysql运行状态:systemctl status  mysql.service

[root@yoyo local]# systemctl status  mysql.service

[root@yoyo local]# service mysqld restart Redirecting to /bin/systemctl restart mysqld.service Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details. [root@yoyo ~]# systemctl status mysql.service ● mysqld.service - MySQL Community Server   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)   Active: active (running) since Tue 2019-01-15 09:53:42 CST; 47s ago Main PID: 946 (mysqld_safe)   CGroup: /system.slice/mysqld.service           ├─ 946 /bin/sh /usr/bin/mysqld_safe --basedir=/usr           └─1282 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/v... Jan 15 09:53:39 yoyo systemd[1]: Starting MySQL Community Server... Jan 15 09:53:40 yoyo mysqld_safe[946]: 190115 09:53:40 mysqld_safe Logging to '/var/log/mysqld.log'. Jan 15 09:53:40 yoyo mysqld_safe[946]: 190115 09:53:40 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql Jan 15 09:53:42 yoyo systemd[1]: Started MySQL Community Server.

mysql重置密码

方法一:
初次安装使用mysql,root账户默认是没设置密码的,系统会给个临时密码,在/var/log/mysqld.log可以查看

[root@yoyo local]# grep 'temporary password’ /var/log/mysqld.log

如下图所示,出现的就是临时密码,复制出来就可以登录mysql了

[root@yoyo local]# mysql -u root -p

看到Enter password: 输入密码,重置密码后exit退出mysql

[root@yoyo local]# mysql -u root -p Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is 26 Server version: 5.6.42 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. # 重置密码
mysql> update user set password = Password('root') where User = 'root';
# 回车后执行(刷新MySQL系统权限相关的表
mysql> flush privileges;
# 再执行exit退出: mysql> exit Bye [root@yoyo local]#

方法二:
要是上一步找不到临时密码,那就用此方法,先停掉mysql,以安全方式启动

[root@yoyo local]# systemctl stop  mysql.service

以安全方式启动mysql:

[root@yoyo local]# /usr/bin/mysqld_safe —skip-grant-tables >/dev/null 2>&1 &

然后执行

[root@yoyo local]#  /usr/bin/mysql -u root mysql

出现“mysql>”提示符后输入:

mysql> update user set password = Password('root') where User = 'root'; 回车后执行(刷新MySQL系统权限相关的表): mysql> flush privileges; 再执行exit退出: mysql> exit;

退出后,使用以下命令登陆mysql,试试是否成功:

[root@yoyo local]#mysql -u root -p

按提示输入密码:root

[root@yoyo local]# mysql -u root -p Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is 27 Server version: 5.6.42 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>

出现Welcome to the MySQL那就是登录成功了

查看mysql端口号

mysql默认端口是3306,如何查看msyql端口号呢?可以用root账号登录后,执行show variables like 'port’;

[root@yoyo local]# mysql -u root -p Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is 33 Server version: 5.6.42 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show variables like 'port'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | port          | 3306  | +---------------+-------+ 1 row in set (0.00 sec) mysql>

授权mysql远程连接

mysql在linux上安装完成后,为了方便的查看,可以在本地电脑上安装一个远程连接数据库的客户端,远程连上mysql

方法一:
先创建一个root新用户,登录密码为password,可以自己随便命名

mysql> create user 'root’@’%’ identified by 'password’;

[root@yoyo sysconfig]# mysql -u root -p Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g. mysql> create user 'root'@'%' identified by 'password';   ERROR 1396 (HY000): Operation CREATE USER failed for 'root'@'%' mysql> exit

方法二:
查看user表,把host为localhost,user为root的记录更新host为%就是允许远程访问了
操作mysql时候,先执行use mysql

[root@yoyo sysconfig]# mysql -u root -p Enter password: mysql> use mysql Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A \Database changed mysql> select user,host,password from user; +-------+-----------+-------------------------------------------+ | user  | host      | password                                  | +-------+-----------+-------------------------------------------+ | root  | yoyo      | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | root  | 127.0.0.1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | root  | ::1       | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | |       | yoyo      |                                           | | root1 | %         | *668425423DB5193AF921380129F465A6425216D0 | | root  | localhost | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 | +-------+-----------+-------------------------------------------+ 6 rows in set (0.00 sec)

如果看到root后面的host对应的是%说明有远程访问权限,显示localhost就 update更新它,如何flush privileges刷新系统权限

mysql> use mysql mysql> update user set host = '%' where user = 'root'; ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> select user,host,password from user; +-------+-----------+-------------------------------------------+ | user  | host      | password                                  | +-------+-----------+-------------------------------------------+ | root  | yoyo      | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | root  | 127.0.0.1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | root  | ::1       | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | |       | yoyo      |                                           | | root1 | %         | *668425423DB5193AF921380129F465A6425216D0 | | root  | %         | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 | +-------+-----------+-------------------------------------------+ 6 rows in set (0.00 sec) mysql> exit

方法三:

授权法,给root用户远程登录的权限

# 想root使用123456从任何主机连接到mysql服务器的话 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123546' WITH GRANT OPTION; # 如果你想允许用户root从ip为192.168.1.3的主机连接到mysql服务器,并使用123456作为密码 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY '123456' WITH GRANT OPTION;

接下来去阿里云ECS服务后台安全组-添加规则,新增3306端口访问权限,使用Navicat远程工具就可以连上了

这里的账号密码就是前面方法一里面设置的“root” 和“password”

开启与关闭服务

1启动mysql

service mysqld start

2查看mysql运行状态

service mysqld status     # 或者 systemctl status  mysql.service

3停掉mysql服务

service mysqld stop       # 或者   systemctl stop  mysql.service

4重启mysql

systemctl restart  mysql.service

5查看运行进程

ps -ef | grep mysqld

[root@yoyo sysconfig]# ps -ef | grep mysql mysql     2506     1  0 12:51 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr mysql     2674  2506  0 12:51 ?        00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64mysql/plugin --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock root      2748  1668  0 12:55 pts/0    00:00:00 grep --color=auto mysql

6查看mysql端口

netstat -tulpn |grep mysql

[root@yoyo sysconfig]# netstat -tulpn |grep mysql tcp6       0      0 :::3306                 :::*                    LISTEN      2674/mysqld

遇到问题

启动mysql的时候,出现Failed to start MySQL Community Server.具体报错如下

[root@yoyo ~]# systemctl status mysql.service ● mysqld.service - MySQL Community Server   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)   Active: failed (Result: start-limit) since Mon 2019-01-14 20:31:27 CST; 13h ago  Process: 26800 ExecStartPost=/usr/bin/mysql-systemd-start post (code=exited, status=0/SUCCESS)  Process: 26799 ExecStart=/usr/bin/mysqld_safe --basedir=/usr (code=exited, status=1/FAILURE)  Process: 26786 ExecStartPre=/usr/bin/mysql-systemd-start pre (code=exited, status=0/SUCCESS) Main PID: 26799 (code=exited, status=1/FAILURE) Jan 14 20:31:27 yoyo systemd[1]: Failed to start MySQL Community Server. Jan 14 20:31:27 yoyo systemd[1]: Unit mysqld.service entered failed state. Jan 14 20:31:27 yoyo systemd[1]: mysqld.service failed. Jan 14 20:31:27 yoyo systemd[1]: mysqld.service holdoff time over, scheduling restart. Jan 14 20:31:27 yoyo systemd[1]: start request repeated too quickly for mysqld.service Jan 14 20:31:27 yoyo systemd[1]: Failed to start MySQL Community Server. Jan 14 20:31:27 yoyo systemd[1]: Unit mysqld.service entered failed state. Jan 14 20:31:27 yoyo systemd[1]: mysqld.service failed.

刚开始以为是哪里配置有问题,后来百度搜了下,reboot重启linux服务器就解决了。

2019年《python全栈自动化测试课程》2月16号开学!

主讲老师:上海-悠悠

上课方式:QQ群视频在线教学

上课时间:每周六、周日晚上20:30-22:30

2019年《python全栈自动化测试课程》2月16号开学!

(0)

相关推荐

  • Centos 7中,防火墙配置端口规则

    注意:firewalld服务有两份规则策略配置记录,配置永久生效的策略记录时,需要执行"reload"参数后才能立即生效: Permanent:永久生效的 RunTime:现在正在 ...

  • MySQL 数据库崩溃(crash)的常见原因和解决办法

    数据技术嘉年华,十周年盛大开启,点我立即报名!大会以"自研·智能·新基建--云和数据促创新 生态融合新十年" 为主题,相邀数据英雄,总结过往十年历程与成绩,展望未来十年趋势与目标! ...

  • LNMP 搭建--MySQL-5.7安装

    一.下载.上传 1.二进制包(官网下载:https://dev.mysql.com/downloads/mysql/5.7.html#downloads) 2.卸载系统自带的Mariadb(可卸,亦或 ...

  • CentOS7.2 部署VNC服务记录

    不做过多介绍了,下面直接记录下CentOS7系统下安装配置vncserver的操作记录(测试机ip是10.10.1.4) 0)更改为启动桌面或命令行模式 获取当前系统启动模式[root@localho ...

  • Linux学习10-CentOS搭建nginx负载均衡环境

    前言 当自己的web网站访问的人越来越多,一台服务器无法满足现有的业务时,此时会想到多加几台服务器来实现负载均衡. 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,怎样将同一个域名的访问分散 ...

  • Linux学习Day2:安装RedHat Linux和新手必须掌握的命令

    今天是Linux线上培训的第二天,主要是Linux环境的安装和几个常见命令的学习,具体如下: 一.RHEL7系统的安装 首先是VMware WorkStation 12.0软件的安装,然后是RHEL7 ...

  • Linux学习3-yum安装java和Tomcat环境

    前言 linux上安装软件,可以用yum非常方便,不需要下载解压,一个指令就能用yum安装java和tomcat环境. 前面一篇已经实现在阿里云服务器上搭建一个禅道系统的网站,算是小有成就,但并不是每 ...

  • Linux学习14-CentOS安装gitlab环境

    前言 在学习Gitlab的环境搭建之前,首先需要了解Git,Gitlab,GitHub他们三者之间的关系 Git 它是一个源代码版本控制系统,可让您在本地跟踪更改并从远程资源推送或提取更改. GitH ...

  • Linux服务器部署.Net Core笔记:三、安装.NetCore运行环境

    Linux服务器部署.Net Core笔记:三、安装.NetCore运行环境

  • Linux学习9-CentOS搭建nginx环境

    前言 之前我们搭建网站的时候,把war包放到tomcat下就能运行起来了,为什么部署上线的时候,又用到了nginx呢? nginx可以做多台服务器的负载均衡,当用户非常少的时候,可以用一台服务直接部署 ...

  • anyproxy学习4-Linux(Centos)搭建anyproxy环境

    前言 anyproxy可以跨平台使用,前面第一篇是搭建在windows机器上,本篇讲如何在linux上搭建anyproxy环境,当然有mac的小伙伴也可以用mac去搭建一个环境. nodejs安装 a ...

  • docker学习1-CentOS 7安装docker环境

    前言 Docker 提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D ...

  • httprunner学习17-linux上安装httprunner环境

    前言 如果你是在linux上安装httprunner环境,用的是python3的环境,安装成功后会发现hrun命令找不到,需添加软链接. 环境准备: centos 7.6 python 3.6 htt ...