首页 > 数据库技术 > 详细

【中级篇】Linux下搭建MySQL数据库系统

时间:2016-01-10 17:15:26      阅读:295      评论:0      收藏:0      [点我收藏+]

MySQL数据库安装与配置

1.          实验需求:

1)     使用yum安装MySQL数据库

2) MySQL数据库的基本操作(增、删、改、查)

3) MySQL数据库的维护

4) MySQL 数据库的备份与恢复

2.          实验环境:

Linux服务器系统版本:Red Hat Enterprise Linux 6.5  IP:192.168.10.20

WIN7系统客户机: IP: 192.168.10.1

3.      实验步骤:

基本安装操作:

 首先要下载MySQL软件,我这里已经下载好,放在电脑硬盘里,把它共享出来。

 

 

技术分享 

技术分享 

将下载的mysql源码包解压,释放到/opt 

技术分享 

技术分享 

技术分享 

 MySQL5.6需要cmake编译安装,所以要先安装cmake包。

技术分享 

   切换到展开后的源码目录

技术分享 

 配置:  

技术分享 

 

这些都是优化文件,指定放置文件的位置。

 

cmake过程中如果出现ncurses报错,安装“yum install -y ncurses-devel”这个包解决问题。

cmake过程中因为出错退出后,修正了问题,再次cmake之前要执行rm CMakeCache.txt将缓存清除。

技术分享 

 

技术分享 

技术分享 

出现这样的界面说明已经成功,就等待它编译安装完成。等待的时间可能会比较久。

技术分享 

创建运行账户,建立一个空目录,对数据库目录进行权限设置。

技术分享 

chown -R mysql.mysql /usr/local/mysql//这个命令的作用是如果前面已经做过的这个命令,则执行完make && make install 这个命令之后须要执改/usr/local/目录下的mysql这个目录的属主与属组

技术分享 

技术分享 

 建立配置文件

技术分享 

 

技术分享 

cp support-files/mysql.server /etc/init.d/mysqld  //添加系统服务,将mysql.server脚本文件复制到/etc/init.d/目录下,改名为mysqld,然后设置执行权限

chmod 755 /etc/init.d/mysqld       

chkconfig --add /etc/init.d/mysqld  //添加/etc/init.d/myspldchkconfig里,用service命令来管理(service mysql

 

技术分享 

 

初始化脚本mysql_install_db位于安装目录的scripts文件夹中

/usr/local/mysql/scripts/mysql_install_db \  --user=mysql \

--ldata=/var/lib/mysql \ --basedir=/usr/local/mysql \

--datadir=/home/mysql  //指定用户为mysql,链接文件是/var/lib/mysql,基本目录,/usr/local/mysql,数据目录为/home/mysql

 

技术分享 

ln -s /var/lib/mysql/mysql.sock  /home/mysql/mysql.sock   

//源文件是/var/lib/mysql/mysql.sock,链接的文件是/home/mysql/mysql.sock

技术分享 

技术分享 

技术分享 

以上所有的配置完了之后,一定要用“source /root/.bash_profile”这个命令来对初始脚本重新加载,这样用mysql这个用户就能登录了

 

技术分享 

技术分享 

技术分享 

MySQL数据库的默认端口是3306.

 

这样数据库就安装完成了。

 访问MySQL数据库

 1.经过安装后的初始化过程,MySQL数据库的默认管理员为“root”密码为空。

技术分享 

 

2.MySQL数据库设置密码

技术分享 

 

  使用MySQL数据库

  1.查看命令:

mysql> show databases;  //查看当前服务器中有哪些库

mysql> use test;        //切换到所使用的库

mysql> show tables;    //查看当前使用的库中有哪些表

mysql> describe user;   //查看表内容(查看user表里的内容)

 

  2.新建命令:

CREATE TABLE 表名(字段1,字段2...PRIMARY KEY(主键名)

mysql>CREATE DATABASE benet;  //创建数据库名为benet

mysql>use benet              //进入benet这个数据库

mysql> CREATE TABLE users (user_name CHAR(16) NOT NULL,               user_passwd CHAR(48) DEFAULT ‘‘, PRIMARY KEY (user_name));  

//创建表名为users

注释:“user_name”表示字段1名称(也就是表格的第一行),“char(16)”表示类型,“not null”表示null值不能为空 NO

      “user_passwd”表示字段2名称(也就是表格的第二行),“char(48)”表示类型,“default ‘‘”表示null可以为空 YES

      “primary key(user_name)”表示primary key(主键名)

技术分享 

 插入数据记录:

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

mysql> INSERT INTO users(user_name,user_passwd) VALUES(‘zhangsan‘, PASSWORD(‘123456‘));  //users表中插入内容

mysql> INSERT INTO users VALUES(‘lisi‘, PASSWORD(‘654321‘));  //password是用户为密码加密的

mysql> insert into users values(‘sina‘,password(‘123abc‘));

技术分享 

 

3.查询数据记录:

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

技术分享 

  查询某个用户的的数据

技术分享 

mysql> SELECT user,host,password FROM mysql.user WHERE user=‘‘;

mysql> select * from users;   //查看user表里的所有信息

mysql> select user from users;  //查看users表里的user这个用户字段里有哪些用户。

mysql>flush privileges;  //刷新授权信息,

4.修改数据记录:

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

技术分享 

技术分享 

mysql> UPDATE users SET user_passwd=PASSWORD(‘‘) WHERE user_name=‘lisi‘;  //lisi 的密码设为空值

mysql> UPDATE mysql.user SET password=PASSWORD(‘123456‘) WHERE user=‘root‘;  //root的密码设置为123456,下次登录就需要密码。

5.删除数据记录:

DELETE FROM 表名 WHERE 条件表达式

技术分享 

 

mysql> DELETE FROM users WHERE user_name=‘lisi‘;  //删除lisi用户

mysql> DROP TABLE users;  //删除一个表

mysql> DROP DATABASE benet;  //删除数据库

 

 维护MySQL数据库

  1.数据库的用户授权

 授予权限

 GRANT 权限列表 ON 库名.表名 TO 用户名@来源地址 【 IDENTIFIED BY  密码 】

技术分享 

 

技术分享 

技术分享 

技术分享 

 查看权限

  SHOW GRANTS  FOR 用户名@来源地址

 撤销权限

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

技术分享 

技术分享 

 

 

 数据库的备份与恢复

 

# mysqldump -u root -p --opt --all-databases > all-data.sql   

     //备份所有数据库

 

# mysqldump -u root -p --database benet > benet.sql     

    //备份benet数据库

# mysqldump -u root -p mysql user > mysql-user.sql 

   //备份mysqluser

 

  mysql>create database;

# mysql -u root -p test < mysql-user.sql      //将备份还原到test数据库中。

 

例子:

mysqldump -u root -p --database user > user.sql   //将数据库中名为user的数据库备份出来(备份user这个数据库)

 

mysql -u root -p  < user.sql      //将备份user数据库名数据库user.sql还原到数据库中

 

本文出自 “IT随笔” 博客,谢绝转载!

【中级篇】Linux下搭建MySQL数据库系统

原文:http://tang493512148.blog.51cto.com/10053350/1733452

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!