第一步:

1):下载mysql安装包:这里选择下载版本 5.6.33,通用版,linux下64位

http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz 

第二步:

2):卸载老版本MySQL  查找并删除mysql有关的文件

find / -name mysql
rm -rf 上边查找到的路径,多个路径用空格隔开
#或者下边一条命令即可
find / -name mysql|xargs rm -rf

第三步:

3):上传下载好的 MySQL tar包 到指定目录下并解压到指定目录下。上传途径(xftp 或 rz 命令)

tar -zxvf mysql-5.6.31-linux-glibc2.5-x86_64.tar.gz -C ../mysqlInstall

重命名解压后的文件

mv mysql-5.6.33-linux-glibc2.5-x86_64 mysql

第四步:

4):先检查是否有mysql用户组和mysql用户

groups mysql

若无,则添加;

groupadd mysql
useradd -r -g mysql mysql

若有,则跳过;

第五步:

5):进入 MySQL解压后的目录 更改权限

cd mysql/
chown -R mysql:mysql ./

第六步:

6):执行安装脚本

./scripts/mysql_install_db --user=mysql

安装完之后修改当前目录拥有者为 root用户,修改 data 目录拥有者为 mysql

chown -R root:root ./
chown -R mysql:mysql data

第七步:

7):更改 MySQL 密码

上一步安装脚本执行输出的日志中告诉我们如何更改密码了。

但是如果直接执行这两条命令就会报错。

因为这时还没有启动mysql,这算是一个坑。

启动方法如下:

./support-files/mysql.server start

注意:可能遇到的以下问题:

解决方案:

1):没有那个文件或目录

安装MySQL的整个过程。由于我的MySQL不是安装在标准的/usr/local/mysql目录,而是安装在 /opt/mysqlInstall/mysql-5.6.33 目录,导致在启动MySQL服务时报告找不到/usr/local/mysql目录的错误。

就是mysql.server启动文件,该文件所处路径  在解压包的support-files文件夹内,如果不修改的话启动会报错。

2-1):如果报如下的错误:如果报如下的错误:

原因是该路径下没有对应的文件;

解决方法:

mkdir /var/log/mariadb 
chmod 700 /var/log/mariadb

启动 mysql。

2):未找到命令:

cp /usr/local/mysql/bin/my_print_defaults  /usr/bin

3):如果MySQL启动报错,则可能是已经存在MySQL进程,杀掉即可。

ps aux|grep mysql
kill -9 上边的进程号 #或者下边一条命令即可杀掉所有MySQL进程
ps aux|grep mysql|awk '{print $2}'|xargs kill -9

======

MySQL启动之后再执行如下命令更改密码:

./bin/mysqladmin -u root -h admin-02 password 'root'

admin-02:为本机名称

密码更改后即可登录MySQL:

./bin/mysql -h127.0.0.1 -uroot -proot

注意:可能发生的错误

解决方案:

vim  /etc/hosts

第八步:

8):修改配置

但是如果 ./bin/mysql -uroot -proot 登陆 系统会报错:Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) ";

具体可以参考帖子:https://blog.csdn.net/hjf161105/article/details/78850658

验证办法:

./bin/mysql -uroot -p -S /var/lib/mysql/mysql.sock

如果执行上述命令可以连接mysql,则使用下面解决办法

解决办法:

ln -s /var/lib/mysql/mysqld.sock /tmp/mysql.sock

ls /tmp/

同时,将 etc/my.cnf 文件的bind-address = 127.0.0.1 更改为 bind-address = 0.0.0.0,如果配置文件中没有这个配置,则手动添加上

第九步:

9):关闭防火墙

firewall-cmd --state    查看防火墙状态

systemctl disable firewalld.service    设置防火墙开机不启动

第十步:

10):增加远程登录权限

为解决这一问题,需要本地登陆MySQL后执行如下命令。

grant all privileges on *.* to root@'%' identified by 'root';
flush privileges;

执行之后即可远程登录.

来源于:https://www.cnblogs.com/jessica-test/p/9047431.html

ERROR:https://blog.csdn.net/hjf161105/article/details/78850658  https://blog.csdn.net/whd526/article/details/78218801

分享知识-快乐自己:Liunx 安装MySQL的更多相关文章

  1. liunx 安装 mysql 5.6

    第一步  解压文件 目录切换到/usr/local/ cd /usr/local/ 解压 tar zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz 重命名为 ...

  2. liunx 安装mysql数据库

      yum 安装rz/sz yum install -y lrzsz 卸载Mariadb数据库 查询所安装的MariaDB组件: [root@localhost logs]# rpm -qa | gr ...

  3. Liunx 安装 Mysql 5.7

    #[安装 Mysql 5.7] # 00.系统目录说明# 安装文件下载目录:/data/software# Mysql目录安装位置:/usr/local/mysql# 数据库保存位置:/data/my ...

  4. MySQL++:liunx 安装 MySQL

    第一步: 1):下载mysql安装包:这里选择下载版本 5.6.33,通用版,linux下64位 http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql- ...

  5. linux django 知识点 安装mysql数据库 和 pycharm

     django 命令及相关知识点 1. 启动 pycharm 命令:sh pycharm.sh 2. 创建 django 项目 : django-admin.py startproject Hello ...

  6. liunx下mysql数据库使用之三范式,关系模型设计注意项,安装目录结构

    数据库的三范式第一范式===>每行记录的属性,是原子的,拆到不可拆为止.===>例如:一个人的籍贯,可以拆分为,省,市,县,乡,村 第二范式===>每行记录的非主属性(非主键属性), ...

  7. liunx环境下安装mysql数据库

    一:如果你的机器上之前安装有mysql数据库,先进行卸载 (1)需要先将它的文件删除 (2)同时注意删除老板本的etc/my.cnf文件和/etc/mysql目录,这两个文件控制的是mysql的一些配 ...

  8. liunx下安装mysql没有初始密码的解决方法

    #/etc/init.d/mysql stop #cd /usr/local/mysql #mysqld_safe --user=mysql --skip-grant-tables --skip-ne ...

  9. liunx系统下安装mysql数据库5.7.13版本

    一:在/usr/local目录下解压安装包

随机推荐

  1. mybatis介绍安装

    MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简单 ...

  2. Linux时间时区详解与常用时间函数

    时间与时区 整个地球分为二十四时区,每个时区都有自己的本地时间. Ø  UTC时间 与 GMT时间 我们可以认为格林威治时间就是时间协调时间(GMT = UTC),格林威治时间和UTC时间都用秒数来计 ...

  3. urllib.urlencode() 无法encode中文, UnicodeEncodeError

    urllib.urlencode() 无法encode中文, UnicodeEncodeError, 具体错误内容如下:File "/System/Library/Frameworks/Py ...

  4. burp 代理的时候无法访问https网站

    今天在使用burp的时候发现不能访问https网站了,Google下面还出现这个 ERR_SSL_VERSION_OR_CIPHER_MISMATCH,于是到官网下载了一个最新的burp就可以访问了, ...

  5. 多语言中的“默认语言”设置

    最近在搞一个多语言的东西,打算如果用户是中文环境就显示中文,其他任何非中文环境就显示英文.换句话说,把默认语言设置成英文. 不过因为VS是中文的,发现即使默认资源文件是英文(AppResource.r ...

  6. java List的相关工具类

    1. <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</ar ...

  7. iOS框架你了解多少?

    1.iOS 系统可以分为以下四层,每个框架对应IOS系统里的一层,每层建立在它下面层的上面.应该尽量使用上层的框架来代替下面的框架.更高层次的框架是对底层框架基于对象的抽象.以下列出几个iOS开发的常 ...

  8. 栈 堆 stack heap

    点餐 做菜 Stack and Heap 堆和栈的区别 - Grandyang - 博客园 https://www.cnblogs.com/grandyang/p/4933011.html 在和计算机 ...

  9. 【python】-- 队列(Queue)、生产者消费者模型

    队列(Queue) 在多个线程之间安全的交换数据信息,队列在多线程编程中特别有用 队列的好处: 提高双方的效率,你只需要把数据放到队列中,中间去干别的事情. 完成了程序的解耦性,两者关系依赖性没有不大 ...

  10. 第12条:不要在for和while循环后面写else块

    核心知识点: (1)一般的if/else是前面不执行,后面才执行,循环下面的else是前面执行完后面才会执行,如果是break打断也不会执行.循环为空或False也不执行. (2)try/expect ...