centos安装 mysql

1. 下载mysql
mysql被oracle收购后现在退出了企业版和社区版本,社区版本是开源的,企业版是收费的。
社区版可以下载源码也可以下载二进制文件包。源码安装比较麻烦,有很多依赖,如果没有特殊的要求可以直接下载二进制包安装。
我是下载的是社区版 MySQL Community Server ,选择的系统选项为 Linux - Generic 64位 版本5.6.32

2. 解压包
tar xzvf mysql-5.6.32-linux-glibc2.5-x86_64.tar.gz

3. 复制目录
复制解压后的mysql目录到系统的本地软件目录:
执行命令:cp -r mysql-5.6.32-linux-glibc2.5-x86_64 /usr/local/mysql

4. 添加系统mysql组和mysql用户:
执行命令:groupadd mysql和useradd -r -g mysql -s /bin/false mysql

5. 安装数据库:
进入安装mysql软件目录:执行命令 cd /usr/local/mysql
修改当前目录拥有者为mysql用户:执行命令 chown -R mysql:mysql /usr/local/mysql
初始化数据库(5.7.6之后版本执行如下命令):
bin/mysqld --initialize --user=mysql --datadir=/var/lib/mysql/data
bin/mysql_ssl_rsa_setup
(5.7.6之前的版本执行如下命令)
scripts/mysql_install_db --user=mysql

执行后,默认的数据文件放置在 /var/lib/mysql下面
修改当前目录拥有者为root用户:执行命令 chown -R root:mysql /usr/local/mysql
修改当前data目录拥有者为mysql用户:执行命令 chown -R mysql:mysql /var/lib/mysql/data
到此数据库安装完毕

6. 启动mysql服务和添加开机启动mysql服务:
默认的mysql配置文件为/etc/my.cnf,如果有修改默认路径,请启动前修改my.cnf配置文件,不然可能出现启动报错。
添加开机启动:执行命令cp support-files/mysql.server /etc/init.d/mysql,把启动脚本放到开机初始化目录
启动mysql服务:执行命令service mysql start
执行命令:ps -ef|grep mysql 看到mysql服务说明启动成功

7. 把mysql客户端放到默认路径:
ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
注意:建议使用软链过去,不要直接包文件复制,便于系统安装多个版本的mysql

8. 修改mysql的root用户密码,5.7之前的版本root初始密码为空的,5.7之后的默认有一个随机的密码,且密码存放的字段发生了改变,user表中没有password字段了:
5.7.6之前版本执行命令:./bin/mysqladmin -u root password '密码'

9.这时虽然可以使用了,但是如果想远程图形客户端访问还需要设置访问权限,5.7和之前的版本也是不一样的,需要注意。
登录:
mysql -uroot -p
进入mysql系统数据库:
use mysql;
创建用户:
CREATE USER 'testuser'@'%' IDENTIFIED BY 'password';

说明:testuser - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.
例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';

设置权限:
命令:GRANT privileges ON databasename.tablename TO 'username'@'host'

说明: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.
权限包括select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
例子: GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';

注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

修改完毕后刷新生效:

flush privileges;

修改字符集为utf-8,避免无法写入中文。

登录查看当前字符集
# mysql -u root -p 
mysql> show variables like'character%';

修改my.cnf配置文件:
[mysqld]下添加
character_set_server=utf8
init_connect='SET NAMES utf8'

Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写,修改表名不区分大小写

[mysqld]下再添加

lower_case_table_names=1

重启mysql服务即可

centos安装 mysql的更多相关文章

  1. centOS安装Mysql指南

    centOS安装Mysql指南 说明:使用操作系统centOS6.4 32位系统:mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz; 一.准备 下载mysql ...

  2. CentOS安装MySQL

    好记性不如烂笔头,记录一下 yum list installed | grep mysql #检查是否安装了mysql yum -y remove mysql-libs.x86_64 #卸载已经安装的 ...

  3. centos 安装 mysql 5.6和workbench

    windows下安装mysql很简单,去官网找到.msi文件,一键安装就OK了. Centos下面安装Mysql5.6其实也是蛮简单的. 注意:centos6.5默认mysql版本是5.1的 1.添加 ...

  4. 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 ...

  5. CentOS安装MySQL问题汇总

    遇到的错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) denied for ...

  6. centos 安装mysql密码修改后还是不能连接的原因

    centos 上安装mysql密码修改后还是不能连接出现错误:ERROR 1142 (42000): SELECT command denied to user ''@'localhost' for ...

  7. 1.centOS安装Mysql

    上个星期研究了一个星期的Mysql,从今天起把学到的东西整理一下. ---------------------------------------------- mysql安装本人亲试过两种安装方式, ...

  8. 在 Centos 安装 MySQL

    MySQL是开源的数据库管理系统,通常作为LEMP(Linux, Nginx, MySQL/MariaDB, PHP/Python/Perl)技术栈的一部分,而被安装.RedHat 会害怕 Oracl ...

  9. 阿里云服务器 CentOS 安装Mysql 5.6

    下载:https://dev.mysql.com/downloads/file/?id=471181   第一步: 安装mysql5姿势是要先安装带有可用的mysql5系列社区版资源的rpm包 [ro ...

随机推荐

  1. transition实现自定义tips淡入淡出效果

    transition实现动画的时候,只能实现指定属性的渐变,元素显隐要通过opacity来实现: 做了一个小的demo: <!doctype html> <html> < ...

  2. Entity Framwork(EF) 7——在现在数据库的甚而上开发MVC 新项目

    一.开发背景: 由于老系统已经无法满足实际业务需求,需在现有数据库的甚而上开发新的项目. 二.困难点: 而EF默认情况下是要删除现有数据库表格后重新创建,这是不允许的.当你创建数据库对象时系统会提示“ ...

  3. 【转】提高VR渲染速度的最好方法(经典转载)

    VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题.动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下. 一.Irradia ...

  4. a标签截字

    首先要给A标签设置宽度,需要把A标签变为块级元素 display:block:或者 display:inline-block: 然后设置宽度,溢出隐藏,强制不换行这几个属性. a { display: ...

  5. Study Emgu VoteForUniqueness

    Recently i was studying Emgu, but find there is a bug in the VoteForUniqueness function in class Fea ...

  6. JavaScript高级程序设计笔记之面向对象

    说起面向对象,大部分程序员首先会想到 类 .通过类可以创建许多具有共同属性以及方法的实例或者说对象.但是JavaScript并没有类的概念,而且在JavaScript中几乎一切皆对象,问题来了,Jav ...

  7. javascript 函数执行上下文

    在js里,每个函数都有一个执行的上下文,我们可以通过this来访问. 如: 全局函数 function test(){ var local = this; } 我们发现local等于window(do ...

  8. 《C++编程规范:101条规则、准则与最佳实践》学习笔记

    转载:http://dsqiu.iteye.com/blog/1688217 组织和策略问题 0. 不要为小事斤斤计较.(或者说是:知道什么东西不需要标准化) 无需在多个项目或者整个公司范围内强制实施 ...

  9. android开源框架android-async-http使用

    原文地址:http://www.open-open.com/lib/view/open1369637365753.html android-async-http开源框架可以是我们轻松的获取网络数据或者 ...

  10. spark hive 结合处理 把多行变成多列

    原数据格式 : gid       id      score a1        1       90 a1        2      80 a1       3      79 a1       ...