分享知识-快乐自己:Liunx 安装MySQL
第一步:
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的更多相关文章
- liunx 安装 mysql 5.6
第一步 解压文件 目录切换到/usr/local/ cd /usr/local/ 解压 tar zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz 重命名为 ...
- liunx 安装mysql数据库
yum 安装rz/sz yum install -y lrzsz 卸载Mariadb数据库 查询所安装的MariaDB组件: [root@localhost logs]# rpm -qa | gr ...
- Liunx 安装 Mysql 5.7
#[安装 Mysql 5.7] # 00.系统目录说明# 安装文件下载目录:/data/software# Mysql目录安装位置:/usr/local/mysql# 数据库保存位置:/data/my ...
- MySQL++:liunx 安装 MySQL
第一步: 1):下载mysql安装包:这里选择下载版本 5.6.33,通用版,linux下64位 http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql- ...
- linux django 知识点 安装mysql数据库 和 pycharm
django 命令及相关知识点 1. 启动 pycharm 命令:sh pycharm.sh 2. 创建 django 项目 : django-admin.py startproject Hello ...
- liunx下mysql数据库使用之三范式,关系模型设计注意项,安装目录结构
数据库的三范式第一范式===>每行记录的属性,是原子的,拆到不可拆为止.===>例如:一个人的籍贯,可以拆分为,省,市,县,乡,村 第二范式===>每行记录的非主属性(非主键属性), ...
- liunx环境下安装mysql数据库
一:如果你的机器上之前安装有mysql数据库,先进行卸载 (1)需要先将它的文件删除 (2)同时注意删除老板本的etc/my.cnf文件和/etc/mysql目录,这两个文件控制的是mysql的一些配 ...
- liunx下安装mysql没有初始密码的解决方法
#/etc/init.d/mysql stop #cd /usr/local/mysql #mysqld_safe --user=mysql --skip-grant-tables --skip-ne ...
- liunx系统下安装mysql数据库5.7.13版本
一:在/usr/local目录下解压安装包
随机推荐
- mybatis介绍安装
MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简单 ...
- Linux时间时区详解与常用时间函数
时间与时区 整个地球分为二十四时区,每个时区都有自己的本地时间. Ø UTC时间 与 GMT时间 我们可以认为格林威治时间就是时间协调时间(GMT = UTC),格林威治时间和UTC时间都用秒数来计 ...
- urllib.urlencode() 无法encode中文, UnicodeEncodeError
urllib.urlencode() 无法encode中文, UnicodeEncodeError, 具体错误内容如下:File "/System/Library/Frameworks/Py ...
- burp 代理的时候无法访问https网站
今天在使用burp的时候发现不能访问https网站了,Google下面还出现这个 ERR_SSL_VERSION_OR_CIPHER_MISMATCH,于是到官网下载了一个最新的burp就可以访问了, ...
- 多语言中的“默认语言”设置
最近在搞一个多语言的东西,打算如果用户是中文环境就显示中文,其他任何非中文环境就显示英文.换句话说,把默认语言设置成英文. 不过因为VS是中文的,发现即使默认资源文件是英文(AppResource.r ...
- java List的相关工具类
1. <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</ar ...
- iOS框架你了解多少?
1.iOS 系统可以分为以下四层,每个框架对应IOS系统里的一层,每层建立在它下面层的上面.应该尽量使用上层的框架来代替下面的框架.更高层次的框架是对底层框架基于对象的抽象.以下列出几个iOS开发的常 ...
- 栈 堆 stack heap
点餐 做菜 Stack and Heap 堆和栈的区别 - Grandyang - 博客园 https://www.cnblogs.com/grandyang/p/4933011.html 在和计算机 ...
- 【python】-- 队列(Queue)、生产者消费者模型
队列(Queue) 在多个线程之间安全的交换数据信息,队列在多线程编程中特别有用 队列的好处: 提高双方的效率,你只需要把数据放到队列中,中间去干别的事情. 完成了程序的解耦性,两者关系依赖性没有不大 ...
- 第12条:不要在for和while循环后面写else块
核心知识点: (1)一般的if/else是前面不执行,后面才执行,循环下面的else是前面执行完后面才会执行,如果是break打断也不会执行.循环为空或False也不执行. (2)try/expect ...