Linux有问必答:如何在命令行创建一个MySQL数据库-阿里云开发者社区

开发者社区> 玄学酱> 正文

Linux有问必答:如何在命令行创建一个MySQL数据库

简介:
+关注继续查看

Linux有问必答:如何在命令行创建一个MySQL数据库

问题:在一个某处运行的MySQL服务器上,我该怎样通过命令行创建和安装一个MySQL数据库呢?

为了能通过命令行创建一个MySQL数据库,你可以使用mysql命令行客户端。下面是通过mysql命令行客户端创建和安装MySQL的步骤。

第一步:安装MySQL客户端

当然你得确保MySQL客户端已经安装完毕。如果没有的话,可以按照下面的方法。

在Debian,Ubuntu 或者 Linux Mint上:


  1. $ sudo apt-get install mysql-client

在Fedora,CentOS 或者 RHEL上:


  1. $ sudo yum install mysql

第二步:登陆到MySQL服务器

首先,你需要使用root用户登陆进你的MySQL数据库,如下:


  1. $ mysql -u root -h <mysql-server-ip-address> -p

请注意:为了能登进远程的MySQL服务器,你需要开启服务器上的远程访问,如果你想调用同一主机上的MySQL服务器,你可以省略 "-h " 参数


  1. $ mysql -u root -p

你将需要输入MySQL服务器的密码,如果认证成功,MySQL提示将会出现。

第三步:创建一个MySQL数据库

在MySQL提示中输入命令之前,请记住所有的命令都是以分号结束的(否则将不会执行)。另外,考虑输入命令的时候使用大些字母,输入数据库对象使用小写字母。但那不是必须的,只是方便你的阅读。

现在,让我们创建一个叫做xmodulo_DB的数据库:


  1. mysql> CREATE DATABASE IF NOT EXISTS xmodulo_DB;

第四步:创建一个数据库表

为了达到演示的目的,我们将会创建一个叫做posts_tbl的表,表里会存储关于文章的如下信息:

  • 文章的标题
  • 作者的名字
  • 作者的姓
  • 文章可用或者不可用
  • 文章创建的日期

这个过程分两步执行:

首先,选择我们需要使用的数据库:


  1. mysql> USE xmodulo_DB;

然后,在数据库中创建新表:


  1. mysql> CREATE TABLE 'posts_tbl' (
  2. 'post_id' INT UNSIGNED NOT NULL AUTO_INCREMENT,
  3. 'content' TEXT,
  4. 'author_FirstName' VARCHAR(100) NOT NULL,
  5. 'author_LastName' VARCHAR(50) DEFAULT NULL ,
  6. 'isEnabled' TINYINT(1) NOT NULL DEFAULT 1,
  7. 'date' TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
  8. PRIMARY KEY ( 'post_id' )
  9. ) TYPE = MYISAM;

第五步:创建一个用户,并授予权限

当涉及到访问我们新创的数据库和表的时候,创建一个新用户是一个很好的主意。这样做就可以让用户在没有整个MySQL服务器权限的情况下,去访问那个数据库(而且只能是那个数据库)

你可以创建新用户,授予权限,并且使改变生效:


  1. mysql> GRANT ALL PRIVILEGES ON xmodulo_DB.* TO 'new_user'@'%' IDENTIFIED BY 'new_password';
  2. mysql> FLUSH PRIVILEGES;

'newuser'和'newpassword'分别指的是新的用户名和他的密码。这条信息将会被保存在mysql.user表中,而且密码会被加密。

第六步:测试

让我们插入一个虚拟的记录到posts_tbl表:


  1. mysql> USE xmodulo_DB;
  2. mysql> INSERT INTO posts_tbl (content, author_FirstName, author_Las tName)
  3. VALUES ('Hi! This is some dummy text.', 'Gabriel', 'Canepa');

然后查看posts_tbl表中的所有记录:


  1. mysql> SELECT * FROM posts_tbl;

注意:MySQL会在我们先前定义的地方自动插入适当的默认值(比如,'isEnabled'和'date')。

原文发布时间:2014-10-10

本文来自云栖合作伙伴“linux中国”

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【Elastic Engineering】Elasticsearch 简介
Elasticsearch 是一个非常强大的搜索引擎。
8 0
【在家实践】 ECS 初体验
第一次体验云服务器,感觉十分奇妙。
14 0
阿里云对于学习的帮助
在配置好阿里云后的使用过程中发现的帮助,以及便利。
8 0
飞天加速计划使用体验
对于云服务器的使用体验感受
18 0
阿里云初体验
web开发打包部署到linux服务器
18 0
Ecs使用体验
通过几天都使用,给我最大的感觉就是,极大的方便了自己,节省了大量的等待时间,我自己之前使用的都是虚拟机,启动是非常的慢,还大量占用电脑内存,可以说是很麻烦,通过使用阿里服务器,这样的感觉没有了,需要的时候直接使用,不需要漫长的等待,因为云服务器一直是在运行着。
8 0
我的ECS使用体验
在阿里云ECS服务器使用中学习和收获了很多。
7 0
我的历程分享
简述我的学习生涯
10 0
+关注
玄学酱
这个时候,玄酱是不是应该说点什么...
20710
文章
438
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载