精华内容
参与话题
问答
  • MySQL创建数据库和创建数据表

    万次阅读 多人点赞 2019-10-20 23:44:40
    MySQL 创建数据库和创建数据表 MySQL 是最常用的数据库,在数据库操作中,基本都是增删改查操作,简称CRUD。 在这之前,需要先安装好 MySQL ,然后创建好数据库、数据表、操作用户。 一、数据库操作语言 数据库...

    MySQL 创建数据库和创建数据表

    MySQL 是最常用的数据库,在数据库操作中,基本都是增删改查操作,简称CRUD。

    在这之前,需要先安装好 MySQL ,然后创建好数据库、数据表、操作用户。

    一、数据库操作语言

    数据库在操作时,需要使用专门的数据库操作规则和语法,这个语法就是 SQL(Structured Query Language) 结构化查询语言。

    SQL 的主要功能是和数据库建立连接,进行增删改查的操作。SQL是关系型数据库管理系统的标准语言。

    SQL 语言的作用:

    1. 数据定义语言 DDL(Data Definition Language) 。用于创建数据库,数据表。

    2. 数据操作语言 DML(Data Manipulation Language) 。用于从数据表中插入、修改、删除数据。

    3. 数据查询语言 DQL(Data Query Language) 。用于从数据表中查询数据。

    4. 数据控制语言 DCL(Data Control Language) 。用来设置或修改数据库用户或角色的权限。

    使用 SQL 操作数据库时,所有的 SQL 语句都以分号结束。(切换数据库时可以不用分号)

    在 SQL 语句中,不区分大小写,编写 SQL 语句时可以根据情况用大小写的区别来增加可读性。

    二、创建数据库

    1. 连接 MySQL

    输入 mysql -u root -p 命令,回车,然后输入 MySQL 的密码(不要忘记了密码),再回车,就连接上 MySQL 了。

    mysql -u root -p

    最初,都是使用 root 用户登录,工作中如果一直用 root 用户登录,因为权限太大,风险是很大的,所以等创建好权限适合的用户后,就不要经常登录 root 用户了。

    2. 查看当前的数据库

    使用 show databases; 查看当前安装的 MySQL 中有哪些数据库。

    show databases;

    刚安装 MySQL 时,默认有四个数据库,information_schema,mysql,perfomance_schema,sys 。通常情况下,我们不会直接使用这四个数据库,但千万不要把这四个数据库删了,否则会带来很多不必要的麻烦。如果不小心删了,建议是重新安装 MySQL ,在重装之前把自己的数据迁移出来备份好,或者从其他服务器上迁移一个相同的数据库过来。

    3. 创建数据库

    使用 create database 数据库名; 创建数据库。

    create database MyDB_one;

    创建数据库成功后,数据库的数量变成了5个,多了刚才创建的 MyDB_one 。

    4. 创建数据库时设置字符编码

    使用 create database 数据库名 character set utf8; 创建数据库并设置数据库的字符编码。

    create database MyDB_two character set utf8;
    

    直接创建的数据库,数据库的编码方式是 MySQL 默认的编码方式 latin1 (单字节编码) ,通常我们会在数据库中存放中文数据,所以最好把数据库的编码方式设置成 utf-8 ,这样中文才能正常显示。

    create database MyDB_three charset utf8;

    character set 可以缩写成 charset ,效果是一样的。

    5. 查看和显示数据库的编码方式

    使用 show create database 数据库名; 显示数据库的创建信息。

    show create database MyDB_one;
    show create database MyDB_two;

    如果不知道一个数据库的编码方式是什么,可以使用 show create database 数据库名 来查看数据库的编码方式。可以看到刚才创建的 MyDB_one 的编码方式是 MySQL 的默认编码 latin1 ,MyDB_two 的编码方式是 utf-8 。

    当然,这种方式不能在创建的同时显示,只能查看一个已经存在的数据库的编码方式。

    6. 使用 alter database 数据库名 character set utf8; 修改数据库编码

    alter database MyDB_one character set utf8;

    如果一个数据库的编码方式不符合使用需求,可以进行修改。刚才创建的 MyDB_one 经过修改后,编码方式也变成了 utf-8 。

    7. 进入或切换数据库

    使用 use 数据库名 进入或切换数据库。

    use MyDB_one
    use MyDB_two;

    刚连接上 MySQL 时,没有处于任何一个数据库中,如果要使用某一个数据库,就需要进入到这个数据库中。

    use 数据库名 这个命令后面的分号可以省略,这是 SQL 语句中唯一可以省略分号的语句。

    8. 显示当前数据库 select database();

    select database();

    进入数据库中,可以使用 select database(); 来查看当前处于哪个数据库中。长时间操作数据库时,在很多数据库中来回切换后,查看当前的数据库,避免操作错了数据库。

    三、创建数据表

    1. 查看当前数据库中的表

    使用 show tables;查看当前数据库中有哪些表。

    show tables;
    

    在刚才创建的数据库 MyDB_one 中,还没有创建任何表,所以当前是空的。

    2. 创建表

    使用 create table 表名(字段1 字段类型,字段2 字段类型,字段3 字段类型,…); 来创建一张表。

    create table Phone_table(pid INT, name CHAR(20), price INT);

    在 MyDB_one 中创建了一个叫 Phone_table 的数据表,这张表有三个字段 pid,name,price 。为了增加 SQL 的可读性,字段名我用的是小写,字段类型用大写。

    3. 显示表信息

    用 show create table 表名; 来显示已创建的表的信息。

    show create table Phone_table;

    使用 show create table 表名;  可以显示表的字段信息, MySQL 的引擎,和默认的字符编码等信息。与显示数据库信息一样,show 只能显示已经创建了的数据表的信息,不能在创建的同时显示信息。

    如果想更好地展示表的字段信息,可以使用 desc 表名; 来显示表的字段信息。

    4. 给表增加字段

    使用 alter table 表名 add 字段名 数据类型; 为已存在的表添加一个新字段。

    alter table Phone_table add color CHAR(20);

    添加后,刚才的表中多了一个字段,新增成功。

    5. 删除表的字段

    使用 alter table 表名 drop 字段名; 删除一个表中已存在的字段。

    alter table Phone_table drop price;

    删除字段后,表中不再有该字段。

    6. 修改字段的数据类型

    使用 alter table 表名 modify 字段名 数据类型; 修改表中现有字段的数据类型。

    alter table Phone_table modify name VARCHAR(12);

    修改之后,该字段的数据类型发生改变。

    7. 修改字段的数据类型并且改名

    使用 alter table 表名 change 原字段名 新字段名 数据类型; 修改表中现有字段的字段名和类型。

    alter table Phone_table change name pname CHAR(18);

    现在,将表的 name 改成了 pname ,同时修改了 pname 的数据类型。

    四、MySQL 常用字段类型

    一个数据表是由若干个字段组成的,一个表十几个字段也很正常,每个字段表示不同的信息,需要使用不同类型的数据。

    所以在创建表的时候,要为每个字段指定适合的数据类型。

    MySQL 中常用的字段类型有以下这些:

    1. 整数类型

    数据类型 数据范围
    TINYINT -128 -- 127
    SMALLINT -32768 -- 32767
    MEDIUMINT -2^23 -- 2^23-1
    INT -2^31 -- 2^31-1
    BIGINT -2^63 -- 2^63-1

    2. 字符串类型

    数据类型 字节范围 用途
    CHAR(n) 0 -- 255字节 定长字符串
    VARCHAR(n) 0 -- 65535字节 变长字符串
    TEXT 0 -- 65535字节 长文本数据
    LONGTEXT 0 -- 2^32-1字节 极大文本数据
    BLOB 0 -- 65535字节 二进制长文本数据
    LONGBLOB 0 -- 2^32-1字节 二进制极大文本数据

    3. 小数类型

    m 表示浮点数的总长度,n 表示小数点后有效位数。

    数据类型 数据用法 数据范围
    Float Float(m,n) 7位有效数
    Double Double(m,n) 15位有效数
    Decimal Decimal(m,n) 28位有效数

    4. 时间类型

    数据类型 格式 用途
    DATE YYYY-MM-DD 日期
    TIME HH:MM:SS 时间
    YEAR YYYY 年份
    DATETIME YYYY-MM-DD HH:MM:SS 日期和时间
    TIMESTAMP 10位或13位整数(秒数) 时间戳

    5. 枚举类型

    enum(枚举值1,枚举值2,...)

    枚举类型只能在列出的值中选择一个,如性别。

     

     

    展开全文
  • <br />  1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> insert into mysql.user(Host,User,Password

     

    1.新建用户

    //登录MYSQL
    @>mysql -u root -p
    @>密码
    //创建用户
    mysql> insert into mysql.user(Host,User,Password) values(‘localhost’,'jeecn’,password(‘jeecn’));
    //刷新系统权限表
    mysql>flush privileges;
    这样就创建了一个名为:jeecn  密码为:jeecn  的用户。

    //退出后登录一下
    mysql>exit;
    @>mysql -u jeecn -p
    @>输入密码
    mysql>登录成功

    2.为用户授权

    //登录MYSQL(有ROOT权限)。我里我以ROOT身份登录.
    @>mysql -u root -p
    @>密码
    //首先为用户创建一个数据库(jeecnDB)
    mysql>create database jeecnDB;
    //授权jeecn用户拥有jeecn数据库的所有权限
    @>grant all  on jeecnDB.* to jeecn@localhost identified by ‘jeecn’;
    //刷新系统权限表
    mysql>flush privileges;
    mysql>其它操作

    //如果想指定部分权限给一用户,可以这样来写:
    mysql>grant select,update on jeecnDB.* to jeecn@localhost identified by ‘jeecn’;
    //刷新系统权限表。
    mysql>flush privileges;

    mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;

    权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
    当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。
    当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
    用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%’表示从任何地址连接。
    ‘连接口令’不能为空,否则创建失败。

    例如:
    mysql>grant select,insert,update,delete,create,drop on vtdc.employee to jee@10.163.225.87 identified by ‘123′;
    给来自10.163.225.87的用户jee分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。

    mysql>grant all  on vtdc.* to jee@10.10.10.87 identified by ‘123′;
    给来自10.163.225.87的用户jee分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。

    mysql>grant all  on *.* to jee@10.10.10.87 identified by ‘123′;
    给来自10.163.225.87的用户jee分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

    mysql>grant all privileges on *.* to jee@localhost identified by ‘123′;
    给本机用户jee分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

    3.删除用户

    @>mysql -u root -p
    @>密码
    mysql>DELETE FROM user WHERE User=”jeecn” and Host=”localhost”;
    mysql>flush privileges;
    //删除用户的数据库
    mysql>drop database jeecnDB;

    4.修改指定用户密码

    @>mysql -u root -p
    @>密码
    mysql>update mysql.user set password=password(‘新密码’) where User=”jeecn” and Host=”localhost”;
    mysql>flush privileges;
    mysql>quit;

    展开全文
  • 今天安装openstack folsom版本,安装完mysql,为各个服务增加对应的数据库用户后,发现  无法使用新增的用户登陆mysql。我增加用户的方法如下:  mysql -uroot -p$MYSQL_PASS CREATE DATABASE nova;  GRANT ...
    今天安装openstack folsom版本,安装完mysql,为各个服务增加对应的数据库和用户后,发现 
    无法使用新增的用户登陆mysql。我增加用户的方法如下: 
    mysql -uroot -p$MYSQL_PASS <<EOF 
    CREATE DATABASE nova; 
    GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY '$MYSQL_PASS'; 
    CREATE DATABASE glance; 
    GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY '$MYSQL_PASS'; 
    CREATE DATABASE keystone; 
    GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%'IDENTIFIED BY '$MYSQL_PASS'; 
    CREATE DATABASE cinder; 
    GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%'IDENTIFIED BY '$MYSQL_PASS'; 
    CREATE DATABASE quantum; 
    GRANT ALL PRIVILEGES ON quantum.* TO 'quantum'@'%'IDENTIFIED BY '$MYSQL_PASS'; 
    FLUSH PRIVILEGES; 
    EOF 
    但使用用户登陆失败: 
    root@controller:~# mysql -h localhost -ukeystone -ppassword 
    ERROR 1045 (28000): Access denied for user 'keystone'@'localhost' (using password: YES) 
    解决方法: 
    增加普通用户后,执行: 
    mysql> use mysql 
    mysql> delete from user where user=''; 
    mysql> flush privileges; 
    意思是删除匿名用户。 

    OK,搞定,enjoy!


    MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限

     

    1.新建用户

    //登录MYSQL
    @>mysql -u root -p
    @>密码
    //创建用户
    mysql> insert into mysql.user(Host,User,Password) values(‘localhost’,'jeecn’,password(‘jeecn’));
    //刷新系统权限表
    mysql>flush privileges;
    这样就创建了一个名为:jeecn  密码为:jeecn  的用户。

    //退出后登录一下
    mysql>exit;
    @>mysql -u jeecn -p
    @>输入密码
    mysql>登录成功

    2.为用户授权

    //登录MYSQL(有ROOT权限)。我里我以ROOT身份登录.
    @>mysql -u root -p
    @>密码
    //首先为用户创建一个数据库(jeecnDB)
    mysql>create database jeecnDB;
    //授权jeecn用户拥有jeecn数据库的所有权限
    @>grant all  on jeecnDB.* to jeecn@localhost identified by ‘jeecn’;
    //刷新系统权限表
    mysql>flush privileges;
    mysql>其它操作

    //如果想指定部分权限给一用户,可以这样来写:
    mysql>grant select,update on jeecnDB.* to jeecn@localhost identified by ‘jeecn’;
    //刷新系统权限表。
    mysql>flush privileges;

    mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;

    权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
    当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。
    当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
    用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%’表示从任何地址连接。
    ‘连接口令’不能为空,否则创建失败。

    例如:
    mysql>grant select,insert,update,delete,create,drop on vtdc.employee to jee@10.163.225.87 identified by ‘123′;
    给来自10.163.225.87的用户jee分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。

    mysql>grant all  on vtdc.* to jee@10.10.10.87 identified by ‘123′;
    给来自10.163.225.87的用户jee分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。

    mysql>grant all  on *.* to jee@10.10.10.87 identified by ‘123′;
    给来自10.163.225.87的用户jee分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

    mysql>grant all privileges on *.* to jee@localhost identified by ‘123′;
    给本机用户jee分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

    3.删除用户

    @>mysql -u root -p
    @>密码
    mysql>DELETE FROM user WHERE User=”jeecn” and Host=”localhost”;
    mysql>flush privileges;
    //删除用户的数据库
    mysql>drop database jeecnDB;

    4.修改指定用户密码

    1. UPDATE user 语句(回目录)
      这种方式必须是先用root帐户登入mysql,然后执行:
      UPDATE user SET password=PASSWORD('123456') WHERE user='root';
      FLUSH PRIVILEGES;

    或者是下面这种方式

    @>mysql -u root -p

    @>密码
    mysql>update mysql.user set password=password(‘新密码’) where User=”jeecn” and Host=”localhost”;
    mysql>flush privileges;
    mysql>quit;


    展开全文
  • 一旦你成功的安装和配置了 MySQL 数据库服务器,你需要为你的 Confluence 创建数据库数据库用户:在 MySQL 中以超级用户运行 'mysql' 。默认的用户为 'root' 同时密码为空。创建一个空的 Confluence 数据库实例...

    一旦你成功的安装和配置了 MySQL 数据库服务器,你需要为你的 Confluence 创建数据库和数据库用户:

    1. 在 MySQL 中以超级用户运行 'mysql' 。默认的用户为 'root' 同时密码为空。
    2. 创建一个空的 Confluence 数据库实例(例如 confluence):
      CREATE DATABASE <database-name> CHARACTER SET utf8 COLLATE utf8_bin;
    3. 创建一个 Confluence 数据库用户(例如 confluenceuser):
      GRANT ALL PRIVILEGES ON <database-name>.* TO '<confluenceuser>'@'localhost' IDENTIFIED BY '<password>';

      如果 Confluence 没有和你的 MySQL 数据库运行在同一个服务器上,你需要替换 localhost 为你的 Confluence 服务器访问你 MySQL 数据库的 Confluence 服务器主机名或者 IP 地址。

     

    https://www.cwiki.us/display/CONFLUENCEWIKI/Database+Setup+For+MySQL

    展开全文
  • mysql创建数据库用户及导入数据

    千次阅读 2016-12-13 16:59:22
    1. 修改MYSQL服务器字符集为utf8:  1.1 当前MYSQL服务器字符集设置  SHOW VARIABLES LIKE 'character_set_%';  1.2 修改字符集  mysql> SET character_set_client = utf8 ;  mysql> SET character
  • 1.登录mysql(默认账号root,密码为空) mysql -h localhost -u root -p ...3.创建用户admin_mysql,并授予用户拥有数据库db_mysql的所有权限,允许用户远程登录 mysql>grant all privileges on db_mysql...
  • Mysql 8.0.11 创建用户,创建数据库

    千次阅读 2018-10-14 22:48:17
    2.创建数据库,将databasename换成数据库名称. CREATE DATABASE `databasename` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 3.创建用户 username为用户名,password为密码. CREATE USER username ...
  • MYSQL创建数据库创建用户、创建表

    千次阅读 2018-09-25 16:59:32
    1、创建数据库 1、创建数据库 CREATE DATABASE db_test DEFAULT...注:mysql用户无法直接通过create database创建数据库 (创建时会报错:Access denied for user 'username'@'%' to database 'databasename') 必...
  • MySQL 5.7、MySQL 8.0
  • MySQL创建数据库创建用户以及授权

    千次阅读 2018-06-01 10:52:04
    1.通过mysql数据库的user表查看用户相关信息mysql&gt; use mysqlReading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase...
  • 一、创建数据库 mysql> create database databasename; # databasename是想要创建的数据库名字 二、创建用户 mysql> create user 'databasename'@'%' identified by 'username'; # username是用户名 三、...
  • MySQL创建数据库创建用户以及授权

    千次阅读 2017-05-09 19:10:44
    转自[铭久博客(http://www.cnblogs.com/janken/p/5500320.html)1、create schema [数据库名称] default ...–创建数据库 采用create schema和create database创建数据库的效果一样。2、create user ‘[用户名称]’@
  • #创建用户CREATE USER 'test_ncrisk'@'%' IDENTIFIED BY 'test_ncrisk';#创建数据库CREATE database ncrisk default character set utf8 collate utf8_general_ci; #给用户授权GRANT select,update,delete,insert ...
  • MySql8.0.15创建数据库以及删除数据库和用户
  • 创建普通用户 CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password' 授权 GRANT ALL PRIVILEGES ON database_name.* To 'database_user'@'localhost'...创建数据库 CREATE DATABASE database_name; ...
  • mysql创建数据库用户 并授权

    千次阅读 2017-04-03 10:35:45
    使用root用户登录后 ...--创建数据库 CREATE USER 'client1'@'localhost' IDENTIFIED BY 'fazhihong665';--创建用户 grant all on fzh.* to client1@localhost;--授权 DROP TABLE IF EXISTS `fzh_g
  • 1、create schema [数据库名称] default character set utf8 collate utf8_general_ci;--创建数据库  采用create schema和create database创建数据库的效果一样。...--创建用户  密码8位以上,包括:...
  • MySQL创建数据库用户以及授权

    千次阅读 2017-07-25 12:39:52
    创建数据库create database [数据库名称] default character set utf8 ...mysql> CREATE DATABASE test DEFAULT CHARACTER SET utf8 collate utf8_general_ci创建用户create user ‘[用户名称]’@’%’ identified by
  • 对于mysql创建数据库创建用户,和授权的简单介绍。 一、操作: 使用root用户进行登录 mysql -u root -p 创建用户 CREATE USER 'cloudmusic'@'%' IDENTIFIED BY 'cloud123!!!'; 这里创建用户cloudmusic用户...
  • 登录MySQL服务后使用create命令创建数据库 CREATE DATABASE 数据库名称; 举例创建一个简单的数据库,RUNOOB [root@host]# mysql -u root -p Enter password:****** # 登录后进入终端 mysql&gt;...

空空如也

1 2 3 4 5 ... 20
收藏数 49,896
精华内容 19,958
关键字:

创建数据库用户