MySQL服务基础

MySQL是一个真正的多线程,多用户的SQL数据库服务,凭借其高性能,高可靠和易于使用的特性,成为服务器领域中最受欢迎的开源数据库系统。

一.mysql的编译安装

为了避免发生端口冲突,程序冲突等现象,建议先查询mysql软件的安装情况,确认没有以rpm     方式安装的mysql-server,mysql软件包,否则建议将其卸载。

rpm  –q mysql-server mysql

rpm –ivh ncurses-devel-5.7-3.20090208.e16_64.rpm  //安装光盘自带的ncurses-devel包

mysql 5.5需要cmake编译安装,所以先安装cmake包

tar zxfcmake-2.8.6.tar.gz

cd cmake-2.8.6

./configure&& gmake && gmake install

创建运行用户

groupadd mysql

useradd –M –s/sbin/nologin mysql –g mysql

解包

tar zxfmysql-5.5.22.tar.gz   -C /usr/src

cd/usr/src/mysql-5.5.22

配置,编译并安装

cmake –DCMAKE_INSTALL_PREFIX=/usr/local/mysql–DSYSCONFDIR=/etc –DDEFAULT_CHARSET=utf8 –DDEFAULT_COLLATION=utf8_general_ci  -DWITH_EXTRA_CHATSETS=all  && make  && make  install

上述配置命令中,各选项的含义如下:

–DCMAKE_INSTALL_PREFIX:指定将mysql安装到某目录下

–DSYSCONFDIR:指定初始化参数文件目录

–DDEFAULT_CHARSET:指定默认使用的字符集编码,如utf8

–DDEFAULT_COLLATION:指定默认使用的字符集校对规则,utf8_general_ci适用于UTF-8字符集的通用规则

-DWITH_EXTRA_CHATSETS:指定额外支持的其他字符集编码

二.安装后的其他调整

1.对数据库目录进行权限设置

chown–R mysql:mysql /usr/local/mysql

2.建立配置文件

cp/usr/src/mysql-5.5.22/support-files/my-medium.cnf   /etc/my.cnf

3.初始化数据库

为了能够正常使用mysql数据库系统,应以运行用户mysql的身份执行初始化脚本mysql_install_db,指定数据库存放目录。

执行如下命令:

/usr/local/mysql/scripts/mysql_insatll_db   --user=mysql --basedir=/usr/local/mysql

- -datadir=/usr/local/mysql/data

4.设置变量环境

echo“PATH=$PATH:/usr/local/mysql/bin” >>  /etc/profile

. /etc/profile

三.添加系统服务

cp/usr/src/mysql-5.5.22/support-files/mysql.server  /etc/init.d/mysqld

chmod+x /etc/init.d/mysqld

chkconfig  --add mysqld

servicemysqld start

netstat–anpt |grep mysqld   //端口号3306(可以在/etc/my.cnf中[mysql]配置段的“port=3306”修改端口)

四.登陆到mysql服务器

mysqladmin  –u root password 123456     //更改数据库密码为123456

mysql  -u root -p    //使用-p进行密码效验

五.执行mysql操作语句

1.查看数据库服务器的日志文件信息

SHOWMASTER LOGS;

2.查看当前服务器中有哪些库

SHOWDATABASES;

3.查看当前使用的库中有哪些表

USE  test;   //切换到test库中

SHOW  TABLES;

4.查看表的结构

DESCRIBEuser;

5.创建新的库

CREATEDATABASE  auth;

6.创建新的表

CREATE TABLE 表名(字段1名称类型,字段2 类型,……,PRIMARY KEY (主键名));

CREATE TABLE users (user_name CHAR(16) NOT NULL,  user_passwd CHAR(48)  DEFAULT     ‘’, PRIMARY KEY (user_name));  //创建一个users表 “用户名”为不超过16个字节的字

符串,不能为空,后面密码段类似。

7.删除一个数据表

DROP TABLE auth.users;

8.删除一个数据库

DROP TABLE auth

9.向表中插入数据记录

INSERT INTO 表名(字段1,字段2……,) VALUES(字段1的值,….);

INSERT INTO users(user_name,user_passwd)  VALUES(‘zhangsan’,              PASSWORD(‘123456’));

10.查询数据记录

SELECT 字段名1,字段名2…….., FROM 表名 WHERE 条件表达式

Select * from auth.users   //查看auth库中users表的所有记录

SELECT user_name,user_passwd FROM auth.users whereuser_name=’zhangsan’;        //  查询users表中用户名为zhangsan的记录

11.修改数据记录

UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] WHERE 条件表达式

UPDATE auth.users SET user_passwd=PASSWORD(‘’) WHEREuser_name=’lisi’;//吧users

表中lisi的密码改为空

12.删除数据记录

DELETE FROM 表名 WHERE 条件表达式

DELETE FROM auth.users WHERE user_name=’lisi’        //删除lisi的记录

13.授予权限

GRANT     权限列表 ON 库名.表名 TO 用户名@来源地址 [TDENTIFIED BY ‘密码’]

a.权限列表:用于列出授权使用的各种数据库操作。

b.库名.表名:用于指定授权操作的库和表的名称。

c.用户名@来源地址:用于指定用户名和允许访问的客户机地址

d TDENTIFIED BY:用于 设置用户连接数据库是所使用的密码字符串。

GRANT select ONauth.* TO  ‘carey’@’localhost’ TDENTIFIEDBY ‘123456’;

14.查看权限

SHOW  GRANTS FOR 用户名@来源地址

SHOW GRANTS FOR ‘carey’@‘localhost’;

15.撤销权限

REVOKE  权限列表  ON  数据库名.表名 FROM 用户名@来源地址

REVOKE  all ON auth.*FROM ‘carey’@‘localhost‘;

16.备份数据库

A.导出指定库中的部分表。

mysqldump [ 选项] 库名[表名1]  [表名2].。。。。> /备份路径/备份文件名

mysqldump –u root  -pmysql user > mysql-user.sql

B.mysqldump [ 选项] - –databases [库名1]  [库名2].。。。。> /备份路径/备份文件名

mysqldump –u root  -p--databases auth >auth.sql

C.mysqldump [ 选项] --all –databases > /备份路径/备份文件名

D.mysqldump –u root –p  --opt –all-databases> all-databases.sql

17.恢复数据库

mysql [选项]  [库名] [表名] < /备份路径/备份文件名

mysql –u root -p  test < mysql-user.sql

时间: 2024-08-02 18:56:57

MySQL服务基础的相关文章

linux mysql服务基础操作(二)

数据库基础学习之-MySql服务名无效

这篇文章主要介绍了windows7下启动mysql服务出现服务名无效的原因及解决方法 问题原因:mysql服务没有安装. 解决办法: 在 mysql bin目录下 以管理员的权限 执行 mysqld -install命令 然后仍然以管理员的权限 net start mysql 开启Mysql服务了. 附卸载mysql服务的方法. 1.以管理员的权限 net stop mysql ,关闭mysql服务 2.以管理员的权限 mysqld -remove ,卸载mysql服务

不停止MySQL服务增加从库的两种方式

转载自:http://lizhenliang.blog.51cto.com/7876557/1669829 现在生产环境MySQL数据库是一主一从,由于业务量访问不断增大,故再增加一台从库.前提是不能影响线上业务使用,也就是说不能重启MySQL服务,为了避免出现其他情况,选择在网站访问量低峰期时间段操作. 一般在线增加从库有两种方式,一种是通过mysqldump备份主库,恢复到从库,mysqldump是逻辑备份,数据量大时,备份速度会很慢,锁表的时间也会很长.另一种是通过xtrabackup工具

不停止 MySQL 服务增加从库的两种方式

不停止 MySQL 服务增加从库的两种方式 提交 我的评论 加载中 已评论 不停止 MySQL 服务增加从库的两种方式 2015-07-12 数据库开发 数据库开发 数据库开发 微信号 DBDevs 功能介绍 分享数据库相关技术文章.教程和工具,另外还包括数据库相关的工作.偶尔也谈谈程序员人生 :) (点击上方蓝字,快速关注我们) 作者:李振良 网址:http://lizhenliang.blog.51cto.com/7876557/1669829 现在生产环境MySQL数据库是一主一从,由于业

MySQL的基础命令&lt;一&gt;

MySQL常用基础操作命令(5.5) 一.MySQL的启动与关闭 1.MySQL的启动与停止的实质 启动的实质:mysqld_salf --default-file=/data/3306/my.cnf 停止的实质:mysqladmin uroot -p"密码" -s /date/3306/mysql.sock shutdown 二.MySQL的密码有关问题 1.单实例MySQL的启动 [[email protected] mysql-5.1.72]# cp support-files/

[php入门] 3、WAMP中的集成MySQL相关基础操作

前言:本文以小白视角了解WAMP集成开发环境中的MYSQL,涉及的面广而浅,算是导读性质. 1.启动运行熟悉WAMP中的MySQL 先有库.再有表.数据最终以记录的形式插入表中.其中对数据进行操作使用SQL语句,SQL是结构化的查询语言. 在wamp中已经内置了MySQL数据库,可以通过如下操作进行启动MySQL服务(每次使用数据库时,必须启动MySQL服务器) 2.控制台操作数据库简介 我们可以通过控制台来连接.操作数据库:(其中默认没有密码,直接回车即可以) 在console中常用的有sho

不停止MySQL服务增加从库的两种方式【转载】

现在生产环境MySQL数据库是一主一从,由于业务量访问不断增大,故再增加一台从库.前提是不能影响线上业务使用,也就是说不能重启MySQL服务,为了避免出现其他情况,选择在网站访问量低峰期时间段操作. 一般在线增加从库有两种方式,一种是通过mysqldump备份主库,恢复到从库,mysqldump是逻辑备份,数据量大时,备份速度会很慢,锁表的时间也会很长.另一种是通过xtrabackup工具备份主库,恢复到从库,xtrabackup是物理备份,备份速度快,不锁表.为什么不锁表?因为自身会监控主库日

本地无法启动MySQL服务,报的错误:1067,进程意外终止---解决

在本地计算机无法启动MYSQL服务错误1067进程意外终止 这种情况一般是my.ini文件配置出错了 首先找到这个文件: 默认安装路径 C:/Program Files/MySQL/MySQL Server 5.1/my.ini 打开此文件找到:default-storage-engine=INNODB   大概在84行. 将default-storage-engine的值改为:MYISAM,这个时候,MYSQL服务可以启动. 但是还有问题:因为以前你创建的那些数据库还是存在的(如果没有删除),

不停MySQL服务情况下增加从库两种常用方式

现在生产环境MySQL数据库是一主一从,由于业务量访问不断增大,故再增加一台从库.前提是不能影响线上业务使用,也就是说不能重启MySQL服务,为了避免出现其他情况,选择在网站访问量低峰期时间段操作. 一般在线增加从库有两种方式,一种是通过mysqldump备份主库,恢复到从库,mysqldump是逻辑备份,数据量大时,备份速度会很慢,锁表的时间也会很长.另一种是通过xtrabackup工具备份主库,恢复到从库,xtrabackup是物理备份,备份速度快,不锁表.为什么不锁表?因为自身会监控主库日