centOS安装Mysql指南

centOS安装Mysql指南

说明:使用操作系统centOS6.4 32位系统;mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz;

一、准备

下载mysql 

wget http://mirrors.sohu.com/mysql/mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz

注:所有shell命令都以root用户执行。随着mysql版本的更新,新版本的安装方式会有所更改,可以参考mysql压缩包中的INSTALL-BINARY文件。 

此处我下载的是MySQL-5.7下的mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz  

二、解压缩文件并移动到指定目录 

在home文件夹下创建一个mysql文件夹,作为存放mysql文件的目录

[root@localhost ~]# cd /home 

[root@localhost ~]# mkdir mysql 

回到保存下载压缩文件的目录解压压缩文件

[root@localhost ~]# cd /home/user/Downloads 

[root@localhost ~]# tar -zxvf mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz 

移动文件到指定目录 

[root@localhost ~]# mv mysql-5.7.10-linux-glibc2.5-x86_64  /home/mysql/mysql-5.7.10 

三、安装运行mysql所需的包 

[root@localhost ~]# yum search libaio 

[root@localhost ~]# yum install libaio

四、安装及配置mysql

参照mysql文件中的INSTALL-BINARY;

[root@localhost ~]# groupadd mysql #添加一个mysql用户组

[root@localhost ~]# useradd -r -g mysql -s /bin/false mysql #设置-s /bin/false表示mysql不能作为登入用户

[root@localhost ~]# cd /usr/local [root@localhost ~]# ln -s /home/mysql/mysql-5.7.10 mysql#在/usr/local/目录下创建一个mysql链接

[root@localhost ~]# cd mysql [root@localhost ~]# mkdir data #作为存放数据的目录

[root@localhost ~]# chmod 770 data #修改data目录的进入权限

[root@localhost ~]# chown -R mysql:mysql . #修改当前文件夹的用户权限和组权限

[root@localhost ~]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data  # MySQL 5.7.10初始化设置

执行该命令后,注意最后一行的[Note]信息 

[Note] A temporary password is generated for root@localhost: )9AsdF(+86h49 生成的初始密码在首次以root用户登入时使用;

[root@localhost ~]# bin/mysql_ssl_rsa_setup --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data   # MySQL 5.7.10安全连接设置 

[root@localhost ~]# chown -R root . 
[root@localhost ~]# chown -R mysql data  
[root@localhost ~]# cd /var/log 
[root@localhost ~]# mkdir mysql  #作为存放数据库运行日志的文件夹 

[root@localhost ~]# cd /usr/local/mysql/ 

[root@localhost ~]# bin/mysqld_safe --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data & #此命令在后台运行

将mysql加入到可控制启动服务的文件夹内,并命名mysql,即service可控制的服务名,届时可用service mysql start|stop控制启动及关闭mysql 

[root@localhost ~]# cp support-files/mysql.server /etc/init.d/mysql 

至此可用service mysql start来启动mysql数据库。  
配置开机启动mysql服务 

[root@localhost ~]# chkconfig --add mysql 
[root@localhost ~]# chkconfig --level 2345 mysql on

五、首次登入mysql 
[root@localhost ~]# mysql -u root -p 
Enter password:输入之前生成的临时密码 mysql> SET PASSWORD = PASSWORD('123456');  #注意最后的分号;

六、其他配置 

a) 开启防火墙mysql 3306端口的外部访问 CentOS升级到7之后,使用firewalld代替了原来的iptables。

下面记录如何使用firewalld开放Linux端口 

--zone      : 作用域,网络区域定义了网络连接的可信等级。这是一个一对多的关系,这意味着一次连接可以仅仅是一个区域的一部分,而一个区域可以用于很多连接

--add-port  : 添加端口与通信协议,格式为:端口/通讯协议,协议是tcp 或 udp

--permanent : 永久生效,没有此参数系统重启后端口访问失效

[root@localhost ~]#  firewall-cmd --zone=public --add-port=3306/tcp --permanent

[root@localhost ~]#  firewall-cmd --reload  #重启防火墙 

b) 五个mysql的GRANT例子 (mysql的用户,非Centos用户) 

例一、允许使用用户名root密码123456从任何主机连接到mysql服务器 ,该创建的root账号只是从外部访问的账号,与内部linux访问该mysql时所用root不同,内部linux访问该mysql的root账号也不是linux的系统root账号 

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 
 
例二、给来自192.168.155.1的用户user1分配可对数据库dbname的tablename表进行SELECT,INSERT,UPDATE,DELETE,CREATE,DROP等操作的权限,并设定密码为123456。 对表操作权限还有好多如ALTER等 

mysql>GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON dbname.tablename TO 'user1'@'192.168.155.1' IDENTIFIED BY '123456'; 

mysql>GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON dbname.tablename TO 'user1'@'192.168.155.1' IDENTIFIED BY '123456'; 

例三、给来自192.168.155.1的用户user2分配可对数据库dbname所有表进行所有操作的权限,并设定口令为123456。 

mysql>GRANT ALL PRIVILEGES ON dbname.* TO 'user2'@'192.168.155.1' IDENTIFIED BY '123456'; 

例四、给来自192.168.155.1的用户user3分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123456。 

mysql>GRANT ALL PRIVILEGES ON *.* TO 'user3'@'192.168.155.1' IDENTIFIED BY '123456'; 

例一、给本机用户user4分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123456。 

mysql>GRANT ALL PRIVILEGES ON *.* TO 'user4'@'localhost' IDENTIFIED BY '123456';   

例五、刷新权限 ;

mysql>FLUSH PRIVILEGES;

c)   参考: 

1、mysql安装文件中的INSTALL-BINARY文件 

2、http://www.cnblogs.com/dreamhome/p/4716425.html;

3、linux配置防火墙打开3306端口

4、CentOS7 Firewall防火墙详解

我也是初学mysql,才疏学浅,肯定有说得不好的地方,希望大家多多指点,我会及时改正,但请千万不要恶语相加啊!谢谢。

如果喜欢本文,请在后面留个言哈。

转载于:https://www.cnblogs.com/liinux/p/5095717.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/289505.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2016年:勒索病毒造成损失预估超过10亿美元

根据趋势科技公布的最新报告(PDF),2016年是敲诈勒索软件频发的一年,同比增长752%,预测由Locky、Goldeneye等勒索病毒所造成的损失超过10亿美元。报告中同时指出企业和个人是勒索软件的重灾区,而且勒索病毒还…

python3.6字典有序_为什么从Python 3.6开始字典有序并效率更高

在Python 3.5(含)以前,字典是不能保证顺序的,键值对A先插入字典,键值对B后插入字典,但是当你打印字典的Keys列表时,你会发现B可能在A的前面。 但是从Python 3.6开始,字典是变成有顺序…

Linux的进程/线程间通信方式总结

2019独角兽企业重金招聘Python工程师标准>>> Linux系统中的进程间通信方式主要以下几种: 同一主机上的进程通信方式 * UNIX进程间通信方式: 包括管道(PIPE), 有名管道(FIFO), 和信号(Signal) * System V进程通信方式:包括信号量(Semaphore), 消息队列(Me…

开源作者去世后,代码谁来继承?

文 | 肖滢出品 | OSC开源社区(ID:oschina2013)2008 年初,澳大利亚一对兄弟 Simon Zerner 和 Toby Zerner 开始了 esoTalk 的开发。不幸的是, esoTalk 尚处于 Alpha 阶段,主力开发人员哥哥 Simon 就在 2009 年年中去世。…

html 整数转换为小数,二进制如何四舍五入 十进制小数怎么转换为二进制小数?...

二进制是否有类似十进制中“四舍五入”的说法二进制转换成十进制保留小数部分是否要四舍五入,...应当采用“零舍一入”(相当于十进制数的“四舍五入”)。用38线译码器74ls138,实现3位二进制的四舍五入,38线译码器输入对应的110为十进制数6&am…

Android之popWindows底部弹出挡住了华为虚拟键盘问题

1、问题 使用popWindows的时候底部弹出遮挡华为虚拟键盘 2、解决办法 在调用下面代码之前 popupWindow.showAtLocation 加上如下的代码进行设置 popupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

项目中使用CLR编程

1、创建自己的项目 2、右键“解决方案。。。”→添加→新建项目→C#→数据库→SQL Server项目,如下图所示: 3、选择操作数据库

SDN火爆!未来五年年复合增长率达98%

在如今的网络世界,软件定义网络SDN和网络功能虚拟化NFV成为了新的“宠儿”,特别是对于运营商来说,已经将它们视为面向未来转型的关键。因此已经有越来越多的运营商开始尝试引入SDN和NFV技术,尽管它们的标准还尚未完善。 最早采用S…

python桌面程序开发_程序员之路:python3+PyQt5+pycharm桌面GUI开发

先看效果:图 1 没错,学过C#的同学应该很熟悉这个界面,按钮风格和界面风格很相似,万万没想到,python也可以做出这样的界面,简直了!(图 1) 正文开始 一、安装python 为啥要…

转: MySQL 赋予用户权限(grant %-远程和localhost-本地区别)

2019独角兽企业重金招聘Python工程师标准>>> ‍‍相关参考资料:MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库对象 to 用户一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。 grant s…

面试技巧与注意事项

1、面试中的基本礼仪 (1)一旦和用人单位约好面试时间后,一定要提前5-10分钟到达面试地点,以表示求职者的诚意,给对方以信任 感,同时也可调整自己的心态,作一些简单的仪表准备,以免仓促上阵,手忙…

kafka控制台模拟消费_Kafka 详解

kafka简介Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需…

Android之运行PopupWindow提示Unable to add window -- token null is not valid; is your activity running?

1、问题 在使用PopupWindow的时候,我们构建好了直接放在Activity的onCreate函数里面直接运行,提示这个错误 Unable to add window -- token null is not valid; is your activity running? 2、原因分析 popupWindow显示依赖activity,并且要等activity所有的生命周期方法…

android开发板出错,为开发板编译时出错是什么原因

我也是怎么办Arduino:1.8.4 (Windows 7), 开发板:"Arduino/Genuino Uno"C:\Program Files\Arduino\arduino-builder -dump-prefs -loggermachine -hardware C:\Program Files\Arduino\hardware -hardware C:\Users\Administrator\AppData\Local\Arduino15…

python在web可以开发吗_Python Web开发

参考原文 WSGI接口 WSGI(Web Server Gateway Interface)是一个接口,用来屏蔽底部的细节(如TCP的建立连接,HTTP原始请求和响应格式等)。WSGI接口定义非常简单,只需要Web开发者实现一个函数&#…

更新丨.NET 7 预览版2 中的 ASP.NET Core

点击上方蓝字 关注我们(本文阅读时间:6分钟).NET 7 预览版2 现已推出,其中包括对 ASP.NET Core 的许多重大改进。以下是此预览版中新增内容的摘要:• 推断来自服务的 API 控制器操作参数;• SignalR 集线器方法的依赖注…

LoadRunner+Android模所器实现抓包并调试本地服务端

为了测试Android软件的服务端的功能,需要重现某些客户端操作,便于发现功能问题,性能问题。也方便客户端与本机服务端特别是服务端代码进行断点调试。这个时候需要对网络操作进行重现。loadRunner是hp公司开发的压力测试工具。功能比较强大&am…

Linux shell命令 cp 加上-f还是提示是否覆盖

这是由于环境变量中有 allias cpcp -i 为了去掉这个系统自带的别名,能够使用grep -r --include"*" "alias cp" /查找设置这个环境变量的脚本文件: 我的ubuntu机器上是: ./.bash_aliases:alias cpcp -i 于是我将./.bash_…

Android之让代码跑在主线程(无context上下文)的封装

1、问题 有一段代码需要跑在主线程里面,但是没有context上下文,一开始直接想到runOnUiThread,好像不行 runOnUiThread(new Runnable(){public void run(){//执行更新ui的操作} }); 2、解决办法 封装一个handler的单例类 import android.o…

Sub-process /usr/bin/dpkg returned an error code (1)

1.$ sudo mv /var/lib/dpkg/info /var/lib/dpkg/info_old //现将info文件夹更名 2.$ sudo mkdir /var/lib/dpkg/info //再新建一个新的info文件夹 3.$ sudo apt-get update,$ apt-get -f install //不用解释了吧 4.$ sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info_old //执…