-DSYSCONFDIR=/mysql/conf \ 所以在conf下建立my.cnf文件

vi my.cnf

[client]
port=3306
socket=/mysql/conf/mysql.sock

#The MySQL server
[mysqld]
port=3306
user=mysql
socket=/mysql/conf/mysql.sock
pid-file=/mysql/conf/mysql.pid
basedir=/mysql
datadir=/mysql/data
tmpdir=/mysql/tmp
open_files_limit=10240
explicit_defaults_for_timestamp
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

#Buffer
max_allowed_packet=256M
max_heap_table_size=256M
net_buffer_length=8k
sort_buffer_size=2M
join_buffer_size=4M
read_buffer_size=2M
read_rnd_buffer_size=16M

#log
log-bin=/mysql/binlog/mysql-bin
binlog_cache_size=32M
max_binlog_cache_size=512M
max_binlog_size=512M
binlog_format=mixed
log_output=FILE
log-error=/mysql/logs/mysql-error.log
slow_query_log=1
slow_query_log_file=/mysql/logs/slow_query.log
general_log=0
general_log_file=/mysql/logs/general_query.log
expire-logs-days=14

#InnoDB
innodb_data_file_path=ibdata1:2048M:autoextend
innodb_log_file_size=256M
innodb_log_files_in_group=3
innodb_buffer_pool_size=1024M

[mysql]
no-auto-rehash
prompt=(\u@\h) [\d]>\
default-character-set=gbk

初始化mysql数据库:
$ /mysql/scripts/mysql_install_db --datadir=/mysql/data --basedir=/mysql

启动mysql数据库

support-files/mysql.server脚本启动mysql不推荐,推荐使用mysqld_safe启动:
$ mysqld_safe --defaults-file=/mysql/conf/my.cnf &
netstat -lnt |grep 3306
ps -ef |grep mysql 查看mysql端口和进程

配置mysql
mysql5.6默认root用户不设密码的直接敲入mysql登录。
增强安全性:
select user,host from mysql.user;
+------+-----------+
| user | host |
+------+-----------+
| root | 127.0.0.1 |
| root | ::1 |
| | linux01 |
| root | linux01 |
| | localhost |
| root | localhost |
+------+-----------+
6 rows in set (0.01 sec)
6个用户,两个用户没有用户名。所以直接可通过mysql登录。
下面保留一条root用户其他用户全部删除。

delete from mysql.user where (user,host) not in (select 'root','localhost');
修改root用户名
update mysql.user set user='system',password=password('oralinux');
(root@localhost) [(none)]>select * from mysql.db \G

(root@localhost) [(none)]>truncate table mysql.db;

(root@localhost) [(none)]>flush privileges;

root@localhost) [(none)]>exit
Bye
[mysql@linux01 mysql]$ mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
[mysql@linux01 mysql]$ mysql -uroot -p'oralinux'
Warning: Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
[mysql@linux01 mysql]$ mysql -usystem -p'oralinux'
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.6.34-log JASON

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

(system@localhost) [(none)]>

创建管理脚本,创建中间定义文件,目的是提高脚本的复用性:
vi /mysql/scripts/mysql_env.ini
#set env
MYSQL_USER=system
MYSQL_PASS='oralinux'

#check parameter
if [ $# -ne 1 ]
then
HOST_PORT=3306
else
HOST_PORT=$1
fi
$ chmod 600 /mysql/scripts/mysql_env.ini
创建mysql_db_startup.sh脚本,用于启动mysql服务:
#!/bin/sh
# Created by jason
source /mysql/scripts/mysql_env.ini
echo "Startup MySQL Service:localhost_"${HOST_PORT}
/mysql/bin/mysqld_safe --defaults-file=/mysql/conf/my.cnf &

创建mysql_db_shutdown.sh脚本,用于关闭mysql服务:

$ vi /mysql/scripts/mysql_db_shutdown.sh
#!/bin/sh
#Created by jason
source /mysql/scripts/mysql_env.ini
echo "Shutdown MySQL Service:localhost_"${HOST_PORT}
/mysql/bin/mysqladmin -u${MYSQL_USER} -p${MYSQL_PASS} -S /mysql/conf/mysql.sock shutdown
创建sqlplus.sh脚本用于快速登录:
$vi /mysql/scripts/sqlplus.sh
#!/bin/sh
#Created by jason
source /mysql/scripts/mysql_env.ini
echo "Login MySQL Service:localhost_"${HOST_PORT}
/mysql/bin/mysql -u${MYSQL_USER} -p${MYSQL_PASS} -S /mysql/conf/mysql.sock $2
chmod +x /mysql/scripts/sqlplus.sh
编辑mysql用户变量,将上述路径加入到PATH中
echo "export PATH=/mysql/scripts:\$PATH" >> ~/.bash_profile
source ~/.bash_profile
设置开机启动:root下
# vi /etc/rc.localhost
# autostart mysql ,added by jason at 2017-03-31
sudo -i -u mysql /mysql/scripts/mysql_db_startup.sh 3306 > /mysql/logs/mysql_db_startup.log 2>&1
执行sudo命令遇到下列错误:
sudo:sorry,you must have a tty to run sudo
vi /etc/sudoers 注释掉56行
#Defaults requiretty

涂抹mysql笔记-管理mysql服务的更多相关文章

  1. 涂抹mysql笔记-管理mysql库和表

    mysql的表对象是基于库维护的,也就是说它属于某个库,不管对象是由谁创建的,只要库在表就在.这根Oracle不同Oracle中的表对象是基于用户的.属于创建改对象的用户所有,用户在表就在.mysql ...

  2. MySQL:管理MySQL、事务(三)

    干货: 命令行程序mysql实际上是MySQL客户端,真正的MySQL服务器程序是mysqld,在后台运行. 数据库事务具有ACID特性,用来保证多条SQL的全部执行. 五.MySQL 通过mysql ...

  3. 涂抹mysql笔记-搭建mysql高可用体系

    mysql的高可用体系<>追求更高稳定性的服务体系 可扩展性:横向扩展(增加节点).纵向扩展(增加节点的硬件配置) 高可用性<>Slave+LVS+Keepalived实现高可 ...

  4. 涂抹mysql笔记-安装mysql

    1.mysql安装:(1)RPM安装:rpm -ivh xxx 建议安装三个:MySQL-server-VERSION.PLATFORM-cpu.rpmMySQL-client-VERSION.PLA ...

  5. 【MySQL笔记】mysql来源安装/配置步骤和支持中国gbk/gb2312编码配置

    不久的学习笔记.分享.我想有很大的帮助谁刚开始学习其他人的 备注:该票据于mysql-5.1.73版本号例如 1. mysql源代码编译/安装步骤 1) 官网下载mysql源代码并解压 2) cd至源 ...

  6. MySQL 笔记(Mysql 8.0.16)

    用户登陆 mysql -u user_name -p 修改密码 ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; 关闭服务 D:\ ...

  7. MySQL用户管理+MySQL权限管理

    我们现在默认使用的都是root用户,超级管理员,拥有全部的权限! 但是,一个公司里面的数据库服务器上面可能同时运行着很多个项目的数据库! 所以,我们应该可以根据不同的项目建立不同的用户,分配不同的权限 ...

  8. [MYSQL笔记0]MYSQL的安装

    mysql是一种关系型数据库管理系统.以mysql5.7版本为例,安装过程如下: 首先百度出mysql的官网,进入:(以下是自己安装失败的过程,直接下拉最后看大佬的安装过程吧,就是那个红红的网址) 找 ...

  9. 【MySQL笔记】mysql报错"ERROR 1206 (HY000): The total number of locks exceeds the lock table size"的解决方法

    step1:查看 1.1 Mysql命令行里输入"show engines:"查看innoddb数据引擎状态, 1.2 show variables "%_buffer% ...

随机推荐

  1. hdu多校第3场C. Dynamic Graph Matching

    Problem C. Dynamic Graph Matching Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others) Tot ...

  2. 使用 udev 高效、动态地管理 Linux 设备文件

    本文转自:https://www.ibm.com/developerworks/cn/linux/l-cn-udev/index.html 概述: Linux 用户常常会很难鉴别同一类型的设备名,比如 ...

  3. C++获取网络数据

    1.  获取数据 工具libcurl libcurl主要功能就是用不同的协议连接和沟通不同的服务器.libcurl当前支持http, https, ftp, gopher, telnet, dict, ...

  4. spoj Minimax Triangulation

    题解: dp+计算几何 F[i][j]表示第i-j条边的答案 然后转移一下 代码: #include<bits/stdc++.h> using namespace std; ]; ][]; ...

  5. 使用python绘制根轨迹图

    最近在学自动控制原理,发现根轨迹这一张全是绘图的,然而书上教的全是使用matlab进行计算机辅助绘图.但国内对于使用python进行这种绘图的资料基本没有,后来发现python-control包已经将 ...

  6. 划分树(poj2104)

    poj2104 题意:给出n个数,有m次查询,每次查询要你找出 l 到 r 中第 k 大的数: 思路:划分树模板题 上述图片展现了查询时如何往下递推的过程 其中ly表示 [sl,l) 中有多少个数进入 ...

  7. 解决jmeter乱码

    1. 解决响应数据乱码的方法:     在jemter文件下找到bin\jmeter.properties添加下面一句话:    sampleresult.default.encoding=UTF-8 ...

  8. .NET并行计算和并发6-获取线程池的最大可用线程数

    using System; using System.IO; using System.Security.Permissions; using System.Threading; class Test ...

  9. leetcode题解 200. Number of Islands(其实就是一个深搜)

    题目: Given a 2d grid map of '1's (land) and '0's (water), count the number of islands. An island is s ...

  10. windows10 vs2017 C++连接MySQL

    安装mysql8.0 x64 创建test数据库,user表,插入数据如下: +----+------+----------+-----------------+ | id | name | pass ...