CentOS 6.5 64位 MySQL源码安装

1、下载mysql 源码包


2、上传并解压


groupadd mysql
useradd -g mysql mysql

scripts/mysql_install_db --user=mysql 初始化数据库(在mysql文件夹下)

chown -R root .   修改文件所有者(-R 表示所有文件及子文件,.表示当前目录下)
chown -R mysql data 修改data文件夹所有者
chgrp -R mysql .  修改文件用户组

bin/mysqld_safe --user=mysql &   启动mysql(&表示后台启动)

开机自动启动
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 2345 mysqld on 


修改root密码:

mysqladmin -u root password "新密码"


权限:

第一招、mysql服务的启动和停止


net stop mysql


net start mysql


第二招、登陆mysql


语法如下: mysql -u用户名 -p用户密码


键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是:


mysql>


注意,如果是连接到另外的机器上,则需要加入一个参数-h机器IP


第三招、增加新用户


格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"


如,增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用


户连入mysql,然后键入以下命令:


grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";


如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。


如果你不想user1有密码,可以再打一个命令将密码去掉。


grant select,insert,update,delete on mydb.* to user1@localhost identified by "";


第四招: 操作数据库


登录到mysql中,然后在mysql的提示符下运行下列命令,每个命令以分号结束。


1、 显示数据库列表。


show databases;


缺省有两个数据库:mysql和test。 mysql库存放着mysql的系统和用户权限信息,我们改密码和新增用户,实际上就是对这个库进行操作。


2、 显示库中的数据表:


use mysql;


show tables;


3、 显示数据表的结构:


describe 表名;


4、 建库与删库:


create database 库名;


drop database 库名;


5、 建表:


use 库名;


create table 表名(字段列表);


drop table 表名;


6、 清空表中记录:


delete from 表名;


7、 显示表中的记录:


select * from 表名;


第五招、导出和导入数据


1. 导出数据:


mysqldump --opt test > mysql.test


即将数据库test数据库导出到mysql.test文件,后者是一个文本文件


如:mysqldump -u root -p123456 --databases dbname > mysql.dbname


就是把数据库dbname导出到文件mysql.dbname中。


2. 导入数据:


mysqlimport -u root -p123456 < mysql.dbname。


不用解释了吧。


3. 将文本数据导入数据库:


文本数据的字段数据之间用tab键隔开。


use test;


load data local infile "文件名" into table 表名;


1:使用SHOW语句找出在服务器上当前存在什么数据库:


mysql> SHOW DATABASES;


2:2、创建一个数据库MYSQLDATA


mysql> CREATE DATABASE MYSQLDATA;


3:选择你所创建的数据库


mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)


4:查看现在的数据库中存在什么表


mysql> SHOW TABLES;


5:创建一个数据库表


mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));


6:显示表的结构:


mysql> DESCRIBE MYTABLE;


7:往表中加入记录


mysql> insert into MYTABLE values ("hyq","M");


8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)


mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;


9:导入.sql文件命令(例如D:/mysql.sql)


mysql>use database;


mysql>source d:/mysql.sql;


10:删除表


mysql>drop TABLE MYTABLE;


11:清空表


mysql>delete from MYTABLE;


12:更新表中数据


mysql>update MYTABLE set sex="f" where name='hyq';


posted on 2006-01-10 16:21 happytian 阅读(6) 评论(0) 编辑 收藏 收藏至365Key


13:备份数据库


mysqldump -u root 库名>xxx.data


14:例2:连接到远程主机上的MYSQL


假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:


mysql -h110.110.110.110 -uroot -pabcd123


(注:u与root可以不用加空格,其它也一样)


3、退出MYSQL命令: exit (回车)


===========================================


MySQL的权限系统围绕着两个概念: 


1:认证->确定用户是否允许连接数据库服务器 


2:授权->确定用户是否拥有足够的权限执行查询请求等。 


显然从上面可知,如果认证不成功的话,哪么授权肯定是无法进行的。在这里我们要关注两个表,分别是在MySQL数据库中user表和db表。 


user表在某种程度上是独一无二的,因为它是唯一一个在权限请求的认证和授权阶段都起作用的表,也是唯一一个存数MySQL服务器相关权


限的权限表。在认证阶段,它只是负责为用户授权访问MySQL服务器,确定用户每小时的最大连接数和最大并发数;在授权阶段,user确定


允许访问服务器的用户是否被赋予了操作数据库的全局权限,确定用户每小时的最大查询数和更新数。 


db表用于为每个用户针对每个数据库赋予权限。具体的可以查看db的字段。 


用户和权限管理命令: 


create user :用于创建新的用户账户(从5.0版本开始有这个命令),在创建这个用户的时候不分配任何权限,需要在创建之后通过grant


命令来给改用户分配相应的权限。 


eg:create user guest@localhost identified by '123456'; 
grant select on mydb.* to guest@localhost; 


drop user:删除一个用户账户(注意在4.1.1版本之前只能删除没有任何权限的账户,5.0.2之后可以删除任何账户) 


eg:drop user guest; 


rename user:可以实现重命名一个用户账号。 


grant:用于管理访问权限,也就是给用户账号授权。当然它同样可以创建一个新的用户账户。 


eg:grant select, insert, update, delete on new_db.* to guest@'%' identified by '88888888'; 


grant 权限 on 数据库.表 to 用户 @ 访问方式 identified by 密码 


grant select on mydb.* to guest@localhost identified by '123456'; 


BTW:如果需要一个空密码或者无密码的账户,必须先用Create User命令,然后通过 


grant来分配权限。如果如下操作: 


grant all privileges on mydb.* to visitor@'%' ;而在数据库user表中没有先创建visitor 


用户,则会发生1133错误"Can't find any matching row in the user table"。grant只能创 


有密码的账户。 


revoke:删除一个账户,具体查看MySQL的文档。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值