您的位置:首页 > 运维架构 > Linux

linux 安装并应用MySQL数据库

2012-05-16 10:52 344 查看
一、安装MySQL

1. 创建运行MySQL数据库的系统用户,组(如存在无需创建)
[root@www ~]#useradd –M –s /sbin/nologin mysql //不设工作目录,登陆shell为禁止

2. 解压并释放源码包,并切换至展开的源码包目录
[root@www ~]#tar zxvf mysql-5.0.56.tar.gz -C /usr/src/
[root@www ~]#cd /usr/src/mysql-5.0.56

3. 使用.configure编译配置
[root@www mysql-5.0.56]#./configure --prefix=/usr/local/mysql

4. 编译并安装
[root@www mysql-5.0.56]#make && make install

5. 安装后的调整(这里的范例为中型企业)
1).建立配置文件
[root@www mysql-5.0.56]#cp suport-file/my-medium.cnf /etc/my.cnf
2).初始化数据库
[root@www mysql-5.0.56]/usr/local/mysql/bin/mysql_install_db --user=mysql //以mysql身份执行
[root@www mysql-5.0.56]chown –R root.mysql /usr/local/mysql/ //更改目录所有权
[root@www mysql-5.0.56]chown –R mysql /usr/local/mysql/var //更改目录所有权
3).调整lib库路径
[root@www mysql-5.0.56]echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf
[root@www mysql-5.0.56]ldconfig //刷新动态连接库搜索路径,使修改生效

二、MySQL启动控制

1. 使用mysqld_safe脚本安全启动服务
[root@www mysql-5.0.56]/usr/local/mysql/bin/mysql_safe --user=mysql & 脚本启动
[root@www mysql-5.0.56]netstat -ntpl | grep 3306 //mysql默认使用3306端口提供服务
//可以根据需要修改my.cnf配置文件中[mysqld]区块中 port配置行
2. 将mysqld添加为系统服务
源码包support_file文件夹中 mysql.server可作为服务启动脚本复制到init.d目录中,并该改名为mysql可以使用chkconfig --add mysqld ;chkconfig mysqldon 使其自启动
[root@www mysql-5.0.56]cp support-files/mysql.server /etc/init.d/mysqld
[root@www mysql-5.0.56]chmod +x /etc/init.d/mysqld
[root@www mysql-5.0.56]chkconfig --add mysqld
[root@www mysql-5.0.56]chkconfig mysqld on
通过以上命令可以使mysqld服务通过service start stop 等命令关闭重启了

3. 设置MySQL程序的执行路径
[root@www mysql-5.0.56]export PATH=$PATH:/usr/local/mysql/bin
[root@www mysql-5.0.56]echo “PATH=$PATH:/usr/local/mysql/bin” >> /etc/profile

三、数据库基本管理

1. 登陆及退出
使用mysql –u root 命令用root账户登陆数据库管理环境。
使用mysql自带的mysqladmin工具为root账户设置一个数据库密码,增加了安全性
[root@www ~]#mysqladmin -u root password “p@ssw0rd”
[root@www ~]mysql –u root -p 再次登陆需要在mysql –u root 命令后面加-p 参数输入密码

2. 显示数据库结构
1).查看数据库中列表信息
登陆mysql系统后,使用SHOW DATABASES;显示系统中存在的数据库 //注意一定记得加;表示命令结束
2).查看数据库中数据表信息
使用USE调用谋个数据库
使用SHOW TABLES 显示当前数据库中的表
//数据库在var中,每个数据库对应三个.frm .MYD .MYI 的文件
3).显示数据表的结构
使用DESCRIBE [数据库.]表名查看表结构

3.数据库的创建与删除
1).创建新的数据库和表
使用 CREATE DATABASE 数据库名 //创建数据库
使用 CREARE TABLE 表名 (字段定义。。)//创建表
2). 删除一个数据表
使用 drop table [数据库.] 表名 //删除表
3). 删除一个数据库
使用 drop database 数据库名 删除数据库

4. 数据录入与维护
1). 插入新的数据记录
格式:inseret into 表名 (字段1,字段2,。。。。) values(值1,值2,。。。)
用于向数据表中插入新的数据记录
2). 查询数据记录
格式:select 字段1,字段2,。。。 from 表名 where 条件表达式 //表示所有字段可使用* 没有条件省略where
用于从数据表中查找符合条件的数据记录
3). 修改数据记录
格式:update 表名 set 字段1=值1 ,字段2=值2 。。。 where 条件表达式
用于修改、更新数据表中的数据记录
4). 删除数据记录
格式:delete from 表名 where 条件表达式
用于在数据表中删除指定的数据记录
安全起见删除mysql的空用户
mysql> delete from mysql.user where User=’’;
三、维护数据库及用户权限

1.数据库的备份与恢复
使用mysqldump可以完成全部数据库、指定数据库、数据表的备份
格式:mysqldump -u 用户名 -p 【密码】 【options】 [数据库名] 【表名】 > /备份路径/备份文件名
备份整个auth数据库
[root@www ~]#mysqldump -u root -p auth > mysql-auth.sql
Enter password:
[root@www ~]#ll mysql-auth.sql
备份数据库mysql中的user表、host表
[root@www ~]#mysqldump -u root -p mysql host user > mysql.host-user.sql
2). 恢复数据库
在需要恢复时通过mysql命令进行导入
格式:mysql -u root -p [数据库名] < /备份路径/备份文件名
同时恢复多个,可以不写数据库名
[root@www ~]#mysql -u root -p < mysql-all.sql
2.用户及权限设置
MySQL数据库用户的权限管理包括:授予权限、查看权限、撤销权限
1). 授予权限
GRANT语句是用来创建用户并进行授权的最常用的语句。
格式:GRANT 权限列表 ON 数据库名。表名 TO 用户名@来源地址 [ IDENTIFIED BY ‘密码’]
2).查看权限
使用SELECT语句对user、db、host、数据表进行查询。也可以使用SHOW进行查看
格式:SHOW GRANTS FOR 用户名@域名或IP
3).撤销权限
使用REVOKE语句用于撤销指定数据库用户权限
格式:REVOKE 权限列表 ON 数据库名。表名 FROM 用户名@域名或IP
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  安装 数据库 用户