linux+安装mysql+命令_linux安装mysql

进入到mysql官网下载自己对应版本的mysql,下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

20200520002516302090.png

第二步.安装辅助工具xhell5和xftp,帮助查看linux命令和文件管理,具体不做描述;

第三步.安装

1.进入安装包所在目录cd /opt/tools/mysql5.7 并解压文件  tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz,也可在本地解压之后通过xftp放入安装目录下。解压后的目录命名为mysql5.7;

2.添加系统mysql组和mysql用户

检查mysql组和用户是否存在,如无创建

cat /etc/group | grep mysql

20200520002516556983.png

以上为存在的情况,如无,执行添加命令:

groupadd mysql

useradd -r -g mysql mysql

20200520002516599953.png

3.安装数据库

(1)在安装目录创建文件夹data,将/opt/tools/mysql5.7的所有者及所属组改为mysql

chmod -R 755 /opt/tools/mysql5.7

chown -R mysql.mysql /opt/tools/mysql5.7

(2)在/opt/mysql/mysql-5.7.25/support-files目录下创建my_default.cnf,内容为

[mysqld]

basedir = /opt/tools/mysql5.7

datadir = /opt/tools/mysql5.7/data

port = 3306

socket = /tmp/mysql.sock

character-set-server=utf8

log-error = /opt/tools/mysql5.7/data/mysqld.log

pid-file = /opt/tools/mysql5.7/data/mysqld.pid

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

symbolic-links=0

max_connections=400

innodb_file_per_table=1

#表名大小写不敏感,敏感为

lower_case_table_names=1

(3)拷贝到/etc/my.cnf中,如果提示是否覆盖,y

cp support-files/my_default.cnf /etc/my.cnf

(4)编译安装并初始化mysql,务必记住初始化输出日志末尾的密码(数据库管理员临时密码)

进入到安装目录/opt/tools/mysql5.7,命令cd /opt/tools/mysql5.7,初始化 mysqld,命令:./bin/mysqld --initialize --user=mysql --basedir=/opt/tools/mysql5.7/ --datadir=/opt/tools/mysql5.7/data/

(5)初始化完成之后,查看日志,找到临时密码。命令:/opt/tools/mysql5.7/data/mysqld.log

20200520002516647807.png

记录日志最末尾位置root@localhost:后的字符串,此字符串为mysql管理员临时登录密码。

(6)把启动脚本放到开机初始化目录,命令:

cp support-files/mysql.server /etc/init.d/mysql

(7)启动mysql服务,命令

service mysql start

(8)登录mysql,密码为初始密码

进入到安装目录,命令cd /opt/tools/mysql5.7,进入登录:./bin/mysql -u root -p

(9)修改密码

如果报如下错误:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.则说明必须要修改密码。

mysql5.7之前的版本命令是  update userset password=password(“新密码”) where user=”用户名”;

5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

update mysql.user set authentication_string=password(‘root123456‘) where user=‘root‘; #修改密码成功

>mysql -u root -p

Enter password: ********

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 12

Server version: 5.7.18-log MySQL Community Server (GPL)

Copyright (c) 2000, 2017, 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> use mysql;

Database changed

mysql> select User from user; #此处为查询用户命令

+-----------+

| User |

+-----------+

| ******* |

| mysql.sys |

| root |

+-----------+

3 rows in set (0.00 sec)

mysql> update user set password=password("*******") where user="*******"; #修改密码报错

ERROR 1054 (42S22): Unknown column ‘password‘ in ‘field list‘

mysql> update mysql.user set authentication_string=password(‘*******‘) where user=‘*******‘; #修改密码成功

Query OK, 1 row affected, 1 warning (0.00 sec)

Rows matched: 1 Changed: 1 Warnings: 1

mysql> flush privileges; #立即生效

Query OK, 0 rows affected (0.00 sec)

mysql> quit

Bye

n>mysql -u ******* -p #以该用户登录成功.

Enter password: ********

…………………………

mysql>

如果报错 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements,则说明密码不符合要求,针对mysql5.7版本。

(10)添加远程访问权限

use mysql;

update user set host=‘%‘ where user = ‘root‘;

flush privileges;

20200520002516810899.png

(11)重启mysql生效

service mysql stop

service mysql start

或者service mysql restart

第四步 用navicat远程

1、在linux查看mysql服务器IP地址

ifconfig

20200520002516864612.png

记住此IP

navicat设置

20200520002517114622.png

设置完毕

遇到问题

一直连不上,在网上搜索了一下,主要原因为两种

1 虚拟机防火墙或者 3306端口未启用

2 mysql授权问题

问题1

连接时错误提示

使用图形界面管理工具Navicat for MySQL连接Mysql数据库时提示错误:Can‘t connect to MySQL server (10060)

20200520002517170288.png

问题原因:

导致些问题可能有以下几个原因:

1、网络不通;

2、服务未启动;

3、防火墙端口未开放;

解决方法:

启动服务:

首先,我用navicat去远程链接我虚拟机中的MySQL,链接测试失败。

然后在虚拟机中查看网络端口信息:

#netstat -ntpl

20200520002517236697.png

iptables -vnL

查看防火墙的状态,查看3306端口,

如果3306如下,是drop状态,或者根本无3306端口,说明3306端口设置问题

20200520002517325567.png

解决办法:

启动服务:

service mysqld start;

开放防火墙端口

添加需要监听的端口

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

开启3306端口监听,开启后如下图

20200520002517373421.png

扩展知识

防火墙其他相关操作

临时关闭防火墙服务

service iptables stop

开启防火墙服务

service iptables start

开机不再启动防火墙服务

chkconfig iptables off

问题2

远程链接了一下MySQL,出现了以下错误,查了一下,是因为MySQL没有允许远程登陆,所以要授权MySQL远程登陆。

20200520002517472057.png

从任何主机上使用root用户,密码:yourpassword(你的root密码)连接到mysql服务器:

# mysql -u root -proot

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘yourpassword‘ WITH GRANT OPTION;

操作完后切记执行以下命令刷新权限

FLUSH PRIVILEGES

这时再通过navicat远程链接MySQL,链接测试,如下图,成功。

20200520002517689839.png

linux安装mysql

标签:error   ora   修改   com   sbin   color   解决   trade   number

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:https://www.cnblogs.com/zhangpeng8888/p/12920591.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值