Mariadb学习笔记

来源:互联网 发布:ae软件培训班 编辑:程序博客网 时间:2024/05/17 09:17
给root设置初始密码:
[root@localhost ~]# mysqladmin -u root -p flush-privilegespassword "admin123/"

Mysql 创建用户:
[root@localhost ~]# mysql -u root -p -e "GRANT USAGE ON *.* TO'jingpan'@'localhost' IDENTIFIED BY'jingpan';" 
上例会建立名为jingpan的用户,并允许它从localhost 登录MySQL。其中*.* 表示所有
数据库和所有表。同时这里将其密码设置为jingpan
他现在还没有任何权限:不能查看数据库,更不能写入数据。

[root@localhost ~]# mysql -u root -p -e "GRANT SELECT ON *.*TO 'jingpan'@'localhost';" 

使jingpan只能的查看数据库存权限
[root@localhost ~]# mysql -u root -p -e "GRANT SELECT ON *.*TO 'jingpan'@'localhost';" 

查询某个用户所拥有的权限
[root@localhost ~]# mysql -u root -p -e "SHOW GRANTS FOR'jingpan'@'localhost' \G"

授与用户所有权限
[root@localhost ~]# mysql -u root -p -e "GRANT ALL ON *.* TO'jingpan'@'localhost';"

连接到服务器
[root@localhost ~]# mysql -u jingpan -p


在test数据库中创建book表,并且有三列
MariaDB [(none)]> CREATE TABLE test.books (book_idINT,title TEXT,status INT);


列出test数据库所有内容
MariaDB [(none)]> SHOW TABLES FROM test;

指定默认数据库
USE test;


指定完默认数据后,可以省略数据库存名
MariaDB [test]> SHOW TABLES;

查询表结构
MariaDB [test]> DESCRIBE books;

向book表是插入三条数据
MariaDB [test]> INSERT INTO book VALUES (100, 'Heart ofDarkness', 0);
MariaDB [test]> INSERT INTO book VALUES (101, 'The Catcherof the Rye', 1);    
MariaDB [test]> INSERT INTO book VALUES (102, 'My Antonia',0);

查询book表中的内容
MariaDB [test]> SELECT * FROM books

加入WHERE子句
MariaDB [test]> SELECT * FROM books WHERE sattus =1; 

SLECT 语句以\G结尾。有时候这样更易读,
通常能避免因域的内容太长,令表格变得太宽而换行。
MariaDB [test]> SELECT * FROM book WHERE status=0 \G
*************************** 1. row***************************
book_id: 100
  title: Heart of Darkness
 sattus: 0
*************************** 2. row***************************
book_id: 102
  title: My Antonia
 sattus: 0
2 rows in set (0.00 sec)


更新books,将status 的值设为1,作用于book_id 等于102 的所有行
MariaDB [test]> UPDATE books SET sattus = 1 WHERE book_id=102;

同时更改两列内容
MariaDB [test]> UPDATE books SET title = 'THe Catcher inthe Rye', sattus = 1 WHERE book_id = 101;
 
 
创建status_names;
MariaDB [test]> CREATE TABLE status_names (status_idINT,status_name CHAR(8));
 
在status_names中插入两列数据
MariaDB [test]> INSERT INTO status_namesVALUEA(0,'Inactive'),(1,'Active');
 
 
将两个表关联起来
MariaDB [test]> SELECT book_id, title ,status_name FROMbooks  JOIN status_names WHERE status =status_id;
 
Mariadb学习笔记


 在建立books 表时,我们其实可以将status 列声明为TEXT或CHAR,并为每条记录打上
Active 或Inactive。但如果你要为books 输入成千上万行数据,显然打0 或1 更简单,而且
不容易打错字(例如Actve)。摆弄数据库是很无聊的,但如果你的表结构建得好,SQL 语
句写得好,那么情况将有所改善,而且也能节省你的时间和资源。
 
更改表名,把book表改为books表
MariaDB [test]> ALTER TABLE book RENAME TO books;
删除books表;
MariaDB [test]> DROP TABLE books;



原创粉丝点击