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;
我也是初学mysql,才疏学浅,肯定有说得不好的地方,希望大家多多指点,我会及时改正,但请千万不要恶语相加啊!谢谢。
如果喜欢本文,请在后面留个言哈。
centOS安装Mysql指南的更多相关文章
- centos安装 mysql
centos安装 mysql 1. 下载mysqlmysql被oracle收购后现在退出了企业版和社区版本,社区版本是开源的,企业版是收费的.社区版可以下载源码也可以下载二进制文件包.源码安装比较麻烦 ...
- Ubuntu 14 安装MySQL指南
ubuntu 14 安装MySQL指南安装MySQLsudo apt-get install mysql-server这个应该很简单了,而且我觉得大家在安装方面也没什么太大问题,所以也就不多说了,下面 ...
- CentOS安装MySQL
好记性不如烂笔头,记录一下 yum list installed | grep mysql #检查是否安装了mysql yum -y remove mysql-libs.x86_64 #卸载已经安装的 ...
- centos 安装 mysql 5.6和workbench
windows下安装mysql很简单,去官网找到.msi文件,一键安装就OK了. Centos下面安装Mysql5.6其实也是蛮简单的. 注意:centos6.5默认mysql版本是5.1的 1.添加 ...
- Linux学习笔记:CentOS安装MySQL
[1]安装版本: 1.1 CentOS-7-x86_64-Everything-1503-01 1.2 MySQL-5.6.27-1.linux_glibc2.5.x86_64.rpm-bund ...
- CentOS安装MySQL问题汇总
遇到的错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) denied for ...
- centos 安装mysql密码修改后还是不能连接的原因
centos 上安装mysql密码修改后还是不能连接出现错误:ERROR 1142 (42000): SELECT command denied to user ''@'localhost' for ...
- 1.centOS安装Mysql
上个星期研究了一个星期的Mysql,从今天起把学到的东西整理一下. ---------------------------------------------- mysql安装本人亲试过两种安装方式, ...
- 在 Centos 安装 MySQL
MySQL是开源的数据库管理系统,通常作为LEMP(Linux, Nginx, MySQL/MariaDB, PHP/Python/Perl)技术栈的一部分,而被安装.RedHat 会害怕 Oracl ...
随机推荐
- Oracle中游标返回多条数据的情况
DECLARE -- 定义类型. TYPE test_type IS TABLE OF test_main%ROWTYPE; test_data test_type; -- 定义游标. CURSOR ...
- const C语言(转)
const在C语言中算是一个比较新的描述符,我们称之为常量修饰符,意即其所修饰的对象为常量(immutable). 我们来分情况看语法上它该如何被使用. 1.函数体内修饰局部变量.例:void fun ...
- PAT乙级 1003. 我要通过!(20)
答案正确”是自动判题系统给出的最令人欢喜的回复.本题属于PAT的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”. 得到“答案正确”的条件是: 1. ...
- ASP.NET MVC (一)
工作清闲好一段时间了,趁这段时间弄了弄PHP,做个了简单的MVC网页.玩了玩Android,弄了个拨号器,发短信的,嘿嘿,最满意的还是两天弄了个数独游戏.不务正业一个多月了,也该磨磨刀,接下来一段时间 ...
- dataTabel转成dataview插入列后排序
if (!string.IsNullOrEmpty(strQuyu) && !string.IsNullOrEmpty(strZuhao)) { string[] param = { ...
- equals和==
在初学Java时,可能会经常碰到下面的代码: 1 String str1 = new String("hello"); 2 String str2 = new String(&qu ...
- 赤手空拳编写C#代码
有时候服务器上并没有安装任何IDE或典型的代码编辑器,只能完全手写C#代码. 不妨假设一台全新的PC,较新版本的Windows自带了.net框架,无需开发工具即可编程了. 除了以往的Bat批处理.VB ...
- lamp环境编译(实际通过)
CentOS:5.5Apache:2.2.9PHP:5.2.6MySQL:5.0.41 条件: yum install gccyum install gcc-c++ vi/etc/yum.repos. ...
- Linux异步IO【转】
转自:http://blog.chinaunix.net/uid-24567872-id-87676.html Linux® 中最常用的输入/输出(I/O)模型是同步 I/O.在这个模型中,当请求发出 ...
- 深拷贝 vs 浅拷贝 释放多次
如果类中有需要new的数据,那么一定要注意delete; 如果只free一次,但是提示free多次,一定要注意了,有可能是因为你没有定义拷贝函数! 以我的亲身经历来说: operater *(mycl ...