您的位置:首页 > 数据库 > MySQL

Mysql入门学习

2013-04-14 20:34 513 查看
首先考虑一下能够使用mysql的几个步骤:

1.安装mysql;

2.root进入,设置用户;

3.创建项目DB,数据表结构;

mysql的安装

安装分为mysql-server(客户端)与mysql-client(客户端)。

ubuntu上 sudo apt-get install mysql-server;

sudo apt-get install mysql-client;

终端mysql进入的是mysql-client,而mysql-server作为系统服务,开机时自动加载(可手动),用户通过client连接server数据库;

执行 sudo vim /etc/mysql/my.cnf可以找到bind-address 127.0.0.1:3306// netstat -nat 查看本机现在监听端口

mysql配置文件在/etc/mysql/my.cnf;

表示mysql默认监听在3306端口,并且绑定在本地地址。只能在本地拥有root权限;

用户设置

第一次进入mysql时,首先使用root账户进入。// >mysql -uroot -p 若server端安装在其他机器,则 mysql -uusername -p -h222.22.22.222//机器ip

// >your password

那么root是什么呢?root为mysql默认管理员账户,拥有mysql最高权限ALL。为超级权限。

一个mysql可以同时支持多个用户,所以作为mysql最高级别管理员,为了安全起见,我们需要对用户设置权限,下面附上mysql用户权限表

数据库/数据表/数据列权限:

Alter: 修改已存在的数据表(例如增加/删除列)和索引。

Create: 建立新的数据库或数据表。

Delete: 删除表的记录。

Drop: 删除数据表或数据库。

INDEX: 建立或删除索引。

Insert: 增加表的记录。

Select: 显示/搜索表的记录。

Update: 修改表中已存在的记录。

全局管理权限:

file: 在MySQL服务器上读写文件。

PROCESS: 显示或杀死属于其它用户的服务线程。

RELOAD: 重载访问控制表,刷新日志等。

SHUTDOWN: 关闭MySQL服务。

特别的权限:

ALL: 允许做任何事(和root一样)。

USAGE: 只允许登录--其它什么也不允许做

mysql详细权限学习

mysql3.22.11版发行之后,可以使用GRANT与REVOKE命令进行用户的创建与禁用。

首先介绍GRANT与REVOKE,这两个命令可以用来创建,删除用户也可以用来进行用户授权

GRANT:

用法:

grant <privileges> on <what> to <username> [identified by "<password>"] [with grant option]

命令详细介绍参照mysql的grant用法

REVOKE命令大体与GRANT相同,to的时候变为from;

5.0版本中,又增加了两个新命令 CREATE USER与 DROP USER用法如下

CREATE USER lee IDENTIFIED BY "password"

DROP USER lee;

创建项目DATABASE:

一些数据库的命令:

show databases;//显示当前用户所能看到的数据库

create database <DBname>;//创建数据库

use <DBname>;//使用DBname

drop <DBname>;//删除数据库

show tables;

create table 表名( 属性名 数据类型 [完整性约束条件],

属性名 数据类型 [完整性约束条件],

.....

属性名 数据类型 [完整性约束条件],

);//键值详解外键使用详解



drop table if exists tablename;

明白了这些,就可以create一个自己的数据表了。贴一下我创建数据表的测试代码~

create table user_login( user_id int(6) primary key auto_increment, user_name varchar(10) unique, user_password varchar(20) not null, user_nickname varchar(20) not null);

这样,大家就可以创建出自己的mysql数据表了~~~mysql数据表学习完毕~~~下一步,了解一下PHP—MYSQL的一些函数。学习愉快~

mysql编码设置

问题:

mysql默认character_set_connection | latin1

character_set_connection | latin1

所以,汉字字符是不能显示的,都是问号。

解决

修改编码为UTF8

sudo vim /etc/mysql/my.cnf

添加:

character_set_server=utf8

init_connect='SET NAMES utf8'

sudo /etc/init.d/mysql restart

增删改查
数据:
增加数据
insert into table values(,,,,,);
删除数据
delete from table where 1=1;
改变数据
update table set column=<> where 1=1;
查找数据
select [all/distinct]from table1,table2,...where <条件1> and/or <条件2>...group by column [having<条件>] order by column desc/asc;
用户
增加用户
create user name identified by 'password';
授权:
grant all privileges on *.* to user ;
更改密码:
grant
all privileges on pureftpd.* to user@localhost identified by 'password_new';
刷新权限:
flush
privileges;
查看用户信息:
select
host,user from mysql.user;
删除用户:
delete from mysql.user where user ='username';
数据库:
show databases;
use databases;
create database name;
drop database name;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: