shell 脚本实战笔记(11)--Mysql在linux下的安装和简单运维
前言:
linux中安装mysql以及配置的管理, 基础的运维和管理还是需要会一些的. 这边作下笔记, 以求天天向上(^_^).
安装流程:
*). 安装mysql-server
1). 借助yum检索相关的mysql rpm包
yum search mysql
mysql-server.x86_64 正是我们想要的
2). 安装mysql-server
yum install mysql-server.x86_64 -y
默认mysql-client也安装好
3). 启动mysql服务
/etc/init.d/mysqld start
4). 管理用户
mysql -u root -p
root用户的默认密码为空
5). 添加用户权限
GRANT ALL PRIVILEGES ON <database_name>.<table_name> TO <username>@'<ip>' IDENTIFIED BY '<password>'
如图所示, 把在所有库的所有的表的所有权限赋予给(username='hiveuser', password='hivepass'), 而且登录地址不受限.
其实, 权限表, 在mysql.user表中定义
mysql> show create table mysql.user\G;
Create Table: CREATE TABLE `user` (
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
`User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '',
`Password` char(41) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
# 中间省略....
PRIMARY KEY (`Host`,`User`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Users and global privileges'
注意: PRIMARY KEY为('Host', 'User')的联合主键
用户验证, 密码为加密密码
mysql-server部署在tw-node6机器上, 在另一台及其tw-node7登录进行验证
但本地mysql client去连mysql server缺总是失败?
看来'%'并不包含本地, 需要额外的添加ip为'localhost'的才行
进行验证:
6). 进程分析
简单ps下相关进程
进程: mysqld 是真正的mysql服务进程
进程: mysqld_safe, 其实是mysqld服务进程的监控脚本, 用于启动, 并且在mysqld退出以后, 重启服务, 该角色类似于大名鼎鼎的supervise
[root@tw-node6 ~]# file /usr/bin/mysqld_safe
/usr/bin/mysqld_safe: POSIX shell script text executable
[root@tw-node6 ~]# file /usr/libexec/mysqld
/usr/libexec/mysqld: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
而/etc/init.d/mysqld就是调用/usr/bin/mysqld_safe, 从而间接启动mysqld服务的
7). 配置管理
在编辑/etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0 [mysqld_safe]
log-error=/var/log/mysqld.logskip-name-resolve
pid-file=/var/run/mysqld/mysqld.pid
这边的省略了很多配置项
比如在[mysqld]下的skip-grant-tables, 当管理员忘记帐号密码的时候, 可以借助这个来恢复.
比如在[mysqld]下的skip-name-resolve, 避免域名解析, 防止外部机器连接mysql-server后, 导致慢查询
socket=/var/lib/mysql/mysql.sock, 即mysql.sock, 用于可以借助mysql.sock来连接mysql服务
比如 mysql -S /var/lib/mysql/mysql.sock, 这样也相当的方便

shell 脚本实战笔记(11)--Mysql在linux下的安装和简单运维的更多相关文章
- shell 脚本实战笔记(9)--linux自动批量添加用户
前言: 添加linux用户帐号,这个相对简单, 在面对集群, 许多机器的时候, 我们该如何去做和实现? 这篇短文, 简单讲解一些思路, 尽可能地涉及周边的一些知识点. 不光是运维人员会面临这个问题, ...
- shell 脚本实战笔记(10)--spark集群脚本片段念念碎
前言: 通过对spark集群脚本的研读, 对一些重要的shell脚本技巧, 做下笔记. *). 取当前脚本的目录 sbin=`dirname "$0"` sbin=`cd &quo ...
- mysql在linux下的安装
安装环境:系统是 centos6.5 1.下载 下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads 下载版本:我这里选择的5.6. ...
- mysql在linux下的安装(5.7版本以后)
1.添加mysql组和mysql用户,用于设置mysql安装目录文件所有者和所属组. ①groupadd mysql ②useradd -r -g mysql mysql 2.将二进制文件解压到指定的 ...
- OpenCV入门笔记(一) Linux下的安装
关于OpenCV,有中文的官方站点.里面翻译了官网的教程和API等.中文官方Tutorials见这里:[Tutorials] 一.Ubuntu下的安装 能够选择直接从库里安装,或者手动编译安装,请參考 ...
- Mysql 在Linux下的安装
1.获取mysql源码 wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.49.tar.gz 3.添加mysql用户和用户组,创建 ...
- shell 脚本实战笔记(4)--linux磁盘分区重新挂载
背景: Hadoop的HDFS文件系统的挂载, 默认指定的文件目录是/mnt/disk{N}. 当运维人员, 不小心把磁盘挂载于其他目录, 比如/mnt/data, /mnt/disk01, /mnt ...
- shell 脚本实战笔记(1)--source/fork/exec的区别
在linux shell编程中, 随着脚本处理规模的变大, 会嵌套调用子进程. 但父进程以不同的方式调用子进程, 其结果和背后的机制不尽相同.这边就简单描述下source/fork/exec调用子进程 ...
- shell 脚本实战笔记(2)--环境变量PATH的恩怨情仇
在linux环境下, 相信大家对环境变量PATH, 多多少少有所接触, 这边讲讲PATH的在linux的前世因缘. 先讲讲一个列子 假如我们在为一个新的应用配置其PATH路径中时, 不小心忽略了原先 ...
随机推荐
- TDD、BDD、DDD
TDDTest-Driven DevelopmentTest-Driven Development (TDD) is a software development technique where au ...
- Windows10中注册 regsvr32 xxx.ocx报错but the call to DIIRegisterServer failed with error code 0x80040200
网站中有读取居民身份证的机器,需要安装一些注册activeX控件然后进入指定目录下执行以下命令regsvr32 xxx.ocx报了个错: but the call to DIIRegisterServ ...
- Python day6_dictionary字典的常见方法1_笔记(基本类型结束)
# 字典的简述 # 1.字典不能做字典的key,列表也不能作为列表的key info={ 'k1':'v1', 'k2':'v2' } print(info) #2.通过键获取值 print(info ...
- 定义c/c++全局变量/常量几种方法的区别
转自:http://www.cnblogs.com/yaozhongxiao/archive/2010/08/08/1795338.html 1. 编译单元(模块): 在ide开发工具大行其道的今天, ...
- Java 注解的概念与种类
Java 注解的概念与种类 一,什么是注解 注解和XML文件都是常用的,对web项目进行配置性描述的方式. 举个最简单的例子,对于一个Servlet,比如LoginServlet,采用如下方式: @W ...
- steam
1.steam 教育 Science(科学), Technology(技术), Engineering(工程), Arts(艺术), Maths(数学) 2. steam 平台 Steam英文原译为 ...
- Unity动态创建FBX模型配置文件的存放路径
创建前目录结构: 创建后的目录结构: using System.Collections; using System.Collections.Generic; using UnityEngine; us ...
- php.ini配置说明
1.设置时区为中国时区 date.timezone = PRC 2.设置支持MySql数据 extension=php_pdo_mysql.dll 直接将这个注释打开就OK了 3.让PHP支持简写&l ...
- WPF中为窗体设置背景图片
在WPF应用程式中,我们往往想为一个窗体设置一个中意的背景图,而不是单独的为这个Background设置成某种颜色或渐变颜色的背景. 在WPF 利用Expression Blend工具如何达到这种效果 ...
- 很实用且容易忘记的小命令 for Linux(更新中...)
系统相关 # 系统安装日期 sudo tune2fs -l /dev/sda1 |grep create # 查看centos版本命令 rpm -q centos-release #查看centos版 ...