(五).Linux下使用mysql

2018-04-21  本文已影响0人  木子心语

进入数据库满足的条件:

     1.mysql 服务是否开启

     2.用户名及密码.

连接数据库:

判断是否在哪个数据库里:

SELECT DATABASE();

查看当前用户:

SELECT user();

查看有哪些数据库:

SHOW DATABASE;

创建数据库:

CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name;

例如:

mysql> CREATE DATABASE `mydb`;

Query OK, 1 row affected (0.00 sec)

mysql> CREATE DATABASE `mydb`;

ERROR 1007 (HY000): Can't create database 'mydb'; database exists

mysql> CREATE DATABASE  IF NOT EXISTS `mydb`;

Query OK, 1 row affected, 1 warning (0.00 sec)

删除数据库:

DROP {DATABASE | SCHEMA } [IF EXISTS] dbname;

例如:

mysql> DROP DATABASE `mydb`;

Query OK, 0 rows affected (0.00 sec)

mysql> DROP DATABASE `mydb`;

ERROR 1008 (HY000): Can't drop database 'mydb'; database doesn't exist

mysql> DROP DATABASE IF EXISTS `mydb`;

Query OK, 0 rows affected, 1 warning (0.00 sec)

注意:

MySQL 语句的规范:关键字与函数名称全部大写;数据库名称,表名称,字段名称全部小写,用反括号括起来;SQL语句必须以分号结尾.

打开数据库:

  USE   数据库名称

进入mysql后,使用SELECT DATABASE(); 后会发现当前并没有进入某个数据库中,需要使用use来进入某个数据中.

查看数据库中的表

SHOW  TABLES [FROM db_name]

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

SHOW TABLES 

`查看`mysql`这个数据库中的数据表

SHOW TABLES FROM `mysql`

创建数据表:

CREATE TABLE [ IF NOT EXISTS ] table_name(

column_name data_type,

)

例如:

mysql> CREATE TABLE `tb1`(

-> `id` INT,

-> `name`  VARCHAR(20)

-> );

Query OK, 0 rows affected (0.02 sec)

查看创建的表:

SHOW CREATE TABLE tb_name;(\G)

查看数据表结构:

DESCRIBE tb_name;

SHOW COLUMNS FROM 'tb_name';

删除数据表:

DROP TABLE `tablename`;

修改数据表结构

添加单列:

mysql->  ALTER  TABLE  tb1_name   

->  ADD [COLUMN] col_name

-> column_definition [FIRST|AFTER col-name]

例如:

mysql> ALTER TABLE `tb1`

-> ADD `age` INT

->;

Query OK, 0 rows affected (0.03 sec)

Records: 0  Duplicates: 0  Warnings: 0

mysql> ALTER TABLE `tb1`

-> ADD `number` INT FIRST

-> ;

Query OK, 0 rows affected (0.03 sec)

Records: 0  Duplicates: 0  Warnings: 0

添加多列:

ALTER TABLE tb1_name ADD [COLUMN]

(col_name column_definition,...)

例如:

mysql> ALTER TABLE `tb1`

-> ADD(`aa` INT),

-> (`bb` INT),

->( `cc` INT);

Query OK, 0 rows affected (0.02 sec)

Records: 0  Duplicates: 0  Warnings: 0

删除数据表中的列:

ALTER TABLE tb1_name DROP [COLUMN] col_name;

例如:

mysql> ALTER TABLE `tb1`

-> DROP `aa`

-> ;

Query OK, 0 rows affected (0.03 sec)

Records: 0  Duplicates: 0  Warnings: 0

mysql> ALTER TABLE `tb1`

-> DROP `bb`

-> DROP `cc`

->;

Query OK, 0 rows affected (0.03 sec)

Records: 0  Duplicates: 0  Warnings: 0

向数据表中输入数据:

INSERT [INTO] tb1_name [(col_name,..)] VALUES (val ,...)

例如:

mysql> INSERT INTO `tb1`(`id`,`name`)

-> VALUES(1,'rose'),

->(2,'tom')

->;

Query OK, 2 rows affected (0.00 sec)

Records: 2  Duplicates: 0  Warnings: 0

创建mysql的其他用户

创建一个管理员用户tom账号,密码为 tom:

CREATE USER 'tom'@'%'IDENTIFIED BY 'tom';

给这个用户授予所有远程访问,这个用户主要用于管理整个数据库,备份,还原等操作。

GRANT ALL ON *.* TO 'tom'@'%';

使授权立即生效:

FLUSH PRIVILEGES;

远程连接数据库:

1.查看防火墙状态

service iptables status

2.编辑/etc/sysconfig/iptables 文件 打开3306端口

   加上这句

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

3.重启iptables

service iptables restart

4.再查看状态

service iptables status

5.在cmd下连接远程数据库:

mysql -hxxxxx -P3306 -utk -p

输入密码

上一篇下一篇

猜你喜欢

热点阅读