mysql server 的Centos安装运维

1.添加yum源

CentOS的官方yum源中没有,需要自己添。

在/etc/yum.repos.d/目录下创建mysql-5.6.repo文本文件
vim /etc/yum.repos.d/mysql-5.6.repo
内容见下:

# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
enabled=1
gpgcheck=0
gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

2.安装

然后yum search mysql ,就会有mysql-community-server.x86_64  安装它。

3.启动与停止

service mysqld start//启动服务

netstat -ano|grep 3306  //验证是否启动服务,MySql的默认段口号就是3306

service mysqld stop//停止

service mysqld restart //重启

4.允许远程登陆

默认是不允许别的主机登陆的。需要在mysql>模式下执行下列命令。注意分号。

use mysql;
SELECT `Host`,`User` FROM user;
UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1;
flush privileges;  

见下:

图4-1 允许远程登录

5.命令行执行sql

mysql -u yourUsername  -p (回车,u:user p:password)
(提示你输入密码)
(成功!)

//各种sql操作
exit
(退出成功)

status //查看版本等信息

6.用户名与密码

6.1 设置用户名密码

mysqladmin -u root -p yourPassword   

6.2 重置密码

应用场景:自己忘掉或是别人恶意篡改。

1.修改配置

vim /etc/my.cnf,增加一行 skip-grant-tables。见图。

图6 增加一行,绕过验证

2.重启mysql

不使用密码或密码随便输即可。命令可参照本文前半部分。

3.重设密码

use mysql;
update user set password=PASSWORD("123456") where user='root';

4.重启
把my.cnf中多加的一行注释掉。

7.启动参数优化

mysql 5.6版本启动后占用内存达400多M,可以调小。

在/etc/my.cnf 中添加以下三行语句,然后重启mysql,内存降到100M以内。
performance_schema_max_table_instances=400
table_definition_cache=400
table_open_cache=256

8.日志

8.1 普通日志

mysql> show variables like 'log_bin';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin       | OFF   |
+---------------+-------+
1 row in set (0.00 sec)

可以看到日志功能是没有打开的。

8.2 错误日志

cat /etc/my.cnf,可以看到

log-error=/var/log/mysqld.log

这里就是错误日志的地址。

9.客户端连接情况

mysql> select * from  information_schema.processlist;
+------+------+---------------------+----------+---------+------+-----------+-----------------------------------------------+
| ID   | USER | HOST                | DB       | COMMAND | TIME | STATE     | INFO                                          |
+------+------+---------------------+----------+---------+------+-----------+-----------------------------------------------+
| 4366 | root | 115.28.88.165:57605 | AliyunDB | Sleep   |   33 |           | NULL                                          |
| 4369 | root | 115.28.88.165:57608 | AliyunDB | Sleep   |   33 |           | NULL                                          |
| 4372 | root | 115.28.88.165:57611 | AliyunDB | Sleep   |   17 |           | NULL                                          |
| 4374 | root | 115.28.88.165:57617 | AliyunDB | Sleep   |   17 |           | NULL                                          |
| 4367 | root | 115.28.88.165:57606 | AliyunDB | Sleep   |   33 |           | NULL                                          |
| 4368 | root | 115.28.88.165:57607 | AliyunDB | Sleep   |   33 |           | NULL                                          |
| 4375 | root | 115.28.88.165:57619 | AliyunDB | Sleep   |   17 |           | NULL                                          |
| 4377 | root | localhost           | NULL     | Query   |    0 | executing | select * from  information_schema.processlist |
| 4370 | root | 115.28.88.165:57609 | AliyunDB | Sleep   |   33 |           | NULL                                          |
| 4371 | root | 115.28.88.165:57610 | AliyunDB | Sleep   |   17 |           | NULL                                          |
| 4373 | root | 115.28.88.165:57615 | AliyunDB | Sleep   |   17 |           | NULL                                          |
+------+------+---------------------+----------+---------+------+-----------+-----------------------------------------------+
11 rows in set (0.00 sec)

也可以以ip的维度group by:

select SUBSTRING_INDEX(host,':',1) as ip , count(*) from information_schema.processlist group by ip;
时间: 2024-09-28 21:21:52

mysql server 的Centos安装运维的相关文章

CentOS 7中安装mysql server的步骤分享_Mysql

以前一直用RHEL 6.3和6.4,系统盘里自带了mysql server,配置好yum源后,直接yum install mysql-server就可安装mysql服务器端了,最近用CentOS 7.1,发现系统盘没有提供mysql-server的RPM包,在网上搜罗了半天,最后在mysql的官方网站找到答案. 只需在/etc/yum.repos.d/目录下添加以下文件mysql-community.repo文件,内容如下: # Enable to use MySQL 5.6 [mysql56-

MySQL错误ERROR 2002 (HY000): Can't connect to local MySQL server through socket_Mysql

在安装好了MySQL之后,使用了新的配置文件后,MySQL服务器可以成功启动,但在登陆的时候出现了ERROR 2002 (HY000): Can't connect to local MySQL server through socket,即无法通过socket连接到mysql服务器,同时提供了socket文件的位置.下面是这个问题的描述与解决办法. 1.故障现象 复制代码 代码如下: [root@SZDB mysqldata]# mysql -uroot -p123456 Warning: U

MySQL server PID file could not be found!

重启mysql提示MySQL server PID file could not be found! Starting MySQL...The server quit without updating PID file (/usr/local/mysql/data/rekfan.pid). 我只能呵呵了吗?不是. 我是这样做的,先看下是不是有这个进程,然后结束,再重启,代码:   ps -ef|grep mysqld  kill -9 进程号    你要是没解决?好吧,继续: (解决方法:一个个

ERROR 2002 (HY000): Can't connect to local MySQL server through socket

    在安装好了MySQL之后,使用了新的配置文件后,MySQL服务器可以成功启动,但在登陆的时候出现了ERROR 2002 (HY000): Can't connect to local MySQL server through socket,即无法通过socket连接到mysql服务器,同时提供了socket文件的位置.下面是这个问题的描述与解决办法.   1.故障现象[root@SZDB mysqldata]# mysql -uroot -p123456Warning: Using a

MySQL远程连接ERROR 2003 (HY000) Cant connect to MySQL server on (10060)

MySQL远程连接ERROR 2003 (HY000):Can't connect to MySQL server on'XXXXX' (10060)的问题 D:\Users\xiaomaimiao>mysql -uroot -plhr -h192.168.59.159Warning: Using a password on the command line interface can be insecure.ERROR 2003 (HY000): Can't connect to MySQL

请问在jsp开发中使用的mysql server数据库服务器

问题描述 请问在jsp开发中使用的mysql server数据库服务器 请问在jsp开发中使用的mysql server数据库服务器,在Visual C++ 6.0中也可以使用么?如果可以,请问如何使用? 解决方案 到底你说的是mysql还是sql server?不过这两者都可以在VC中访问,具体你google下 解决方案二: 可以吧,但是6.0都是多少年前的版本了,连sql server会出现各种未知的问题,具体google,楼上正解 解决方案三: 应该是可以的,直接都连接同一个数据库不就可以

Mysql Client链接Mysql Server的认证方式

参见:http://forge.mysql.com/wiki/MySQL_Internals_ClientServer_Protocol#Password_functions 我意译一下,大致就是以下内容: 4.0版本之前 1.服务器发送随机字符串(scramble_buff)给客户端. 2.客户端把用户明文密码加密一下,然后将hash加上服务器的随机字符串加密一下变成新的scramble_buff.(参见sql/password.c:scramble()). 3.客户端将加密后的scrambl

MySQL:无法远程登入MySQL Server解决(摘合)

mysql|server|解决 MySQL:无法远程登入MySQL Server 尝试用MySQL Adminstrator GUI Tool登入MySQL Server,Server却回复错误讯息:Host '60-248-32-13.HINET-IP.hinet.net' is not allowed to connect to thisMySQL server 这个是因为权限的问题,处理方式如下:shell>mysql --user=root -p输入密码mysql>use mysqlm

解决MySQL server has gone away

今天遇到类似的情景,MySQL只是冷冷的说:MySQL server has gone away. 大概浏览了一下,主要可能是因为以下几种原因: 一种可能是发送的SQL语句太长,以致超过了max_allowed_packet的大小,如果是这种原因,你只要修改my.cnf,加大max_allowed_packet的值即可. 还有一种可能是因为某些原因导致超时,比如说程序中获取数据库连接时采用了Singleton的做法,虽然多次连接数据库,但其实使用的都是同一个连接,而且程序中某两次操作数据库的间隔