centos安装 mysql
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的更多相关文章
- centOS安装Mysql指南
centOS安装Mysql指南 说明:使用操作系统centOS6.4 32位系统:mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz; 一.准备 下载mysql ...
- 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 ...
- 阿里云服务器 CentOS 安装Mysql 5.6
下载:https://dev.mysql.com/downloads/file/?id=471181 第一步: 安装mysql5姿势是要先安装带有可用的mysql5系列社区版资源的rpm包 [ro ...
随机推荐
- transition实现自定义tips淡入淡出效果
transition实现动画的时候,只能实现指定属性的渐变,元素显隐要通过opacity来实现: 做了一个小的demo: <!doctype html> <html> < ...
- Entity Framwork(EF) 7——在现在数据库的甚而上开发MVC 新项目
一.开发背景: 由于老系统已经无法满足实际业务需求,需在现有数据库的甚而上开发新的项目. 二.困难点: 而EF默认情况下是要删除现有数据库表格后重新创建,这是不允许的.当你创建数据库对象时系统会提示“ ...
- 【转】提高VR渲染速度的最好方法(经典转载)
VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题.动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下. 一.Irradia ...
- a标签截字
首先要给A标签设置宽度,需要把A标签变为块级元素 display:block:或者 display:inline-block: 然后设置宽度,溢出隐藏,强制不换行这几个属性. a { display: ...
- Study Emgu VoteForUniqueness
Recently i was studying Emgu, but find there is a bug in the VoteForUniqueness function in class Fea ...
- JavaScript高级程序设计笔记之面向对象
说起面向对象,大部分程序员首先会想到 类 .通过类可以创建许多具有共同属性以及方法的实例或者说对象.但是JavaScript并没有类的概念,而且在JavaScript中几乎一切皆对象,问题来了,Jav ...
- javascript 函数执行上下文
在js里,每个函数都有一个执行的上下文,我们可以通过this来访问. 如: 全局函数 function test(){ var local = this; } 我们发现local等于window(do ...
- 《C++编程规范:101条规则、准则与最佳实践》学习笔记
转载:http://dsqiu.iteye.com/blog/1688217 组织和策略问题 0. 不要为小事斤斤计较.(或者说是:知道什么东西不需要标准化) 无需在多个项目或者整个公司范围内强制实施 ...
- android开源框架android-async-http使用
原文地址:http://www.open-open.com/lib/view/open1369637365753.html android-async-http开源框架可以是我们轻松的获取网络数据或者 ...
- spark hive 结合处理 把多行变成多列
原数据格式 : gid id score a1 1 90 a1 2 80 a1 3 79 a1 ...