mysql

常用语句

https://www.cnblogs.com/tujia/p/6292832.html
increment('balance',$price);累加

更新系统

apt-get update
apt-get install upgrade

下载PHP,MySQL,nginx

apt-get install php7.0*//星号代表全部

mysql-server 数据库服务

  执行 apt-get install mysql-server
  出现一般问:缺少依赖(最新系统不会出现)执行 apt-get install -f,然后执行 apt-get install mysql-server
  注意:安装过程会提示输入root用户密码

mysql-client 客户端连接

  执行 apt-get install mysql-client
  安装结束后,可以在控制台中访问数据库 mysql -u root -p
  apt-get install nginx

远程访问数据库最好应该新建用户因为默认root用户只能在本地访问MySQL
先登录

##mysql 远程连接 10061

mysql 未开启远程连接
开启
1、cd /etc/mysql/mysql.conf.d
2、vim mysqld.cnf
修改 bind-address = 127.0.0.0 => 0.0.0.0
重启 /etc/init.d/mysql restart

  mysql -u test -p

修改MySQL编码

vim /etc/mysql/my.cnf
//添加以下两句
[mysqld]
character_set_server=utf8 
init_connect='SET NAMES utf8'
//查看编码
show variables like '%character%';
//重启服务器
systemctl restart mysql

创建用户

  CREATE USER 'name'@'localhost' IDENTIFIED BY 'password';
  CREATE USER 'name'@'%' IDENTIFIED BY 'password';
  //localhost表示本地访问,想远程访问改为%

给用户赋予权限

  授权格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";
  grant select,update on testDATABASE.* to name@'localhost' identified by '1234';
  grant all privileges on *.* to test@'localhost' identified by '1234';本地
 grant all privileges on *.* to test@'%' identified by '1234'; 远程

  grant all privileges on sky.* to 'test'@'%';

删除用户

  DELETE FROM mysql.user WHERE User='name';

修改密码

  SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');

更新权限

  flush privileges;

配置nginx

vim /etc/nginx/sites-available/default

如果使用的是laravel框架 打开cgi

一,数据库的备份与导入

**1),数据库的备份**
1.导出整个数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名例:**mysqldump -u dbadmin -p myblog > /home/zhangy/blog/database_bak/myblog.sql**
2.导出一个表mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名例:mysqldump -u dbadmin -p myblog wp_users> /home/zhangy/blog/database_bak/blog_users.sql
3.导出一个数据库结构mysqldump -u dbadmin -p -d --add-drop-table myblog > /home/zhangy/blog/database_bak/blog_struc.sql说明:-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

4.导出数据库一个表结构

mysqldump -u dbadmin -p -d --add-drop-table myblog  wp_users> /home/zhangy/blog/database_bak/blog_users_struc.sql说明:-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

2),数据库的导入

1,用 mysqldump 备份出来的文件是一个可以直接倒入的 SQL 脚本,有两种方法可以将数据导入。例如:#/usr/local/mysql/bin/mysql -u root -p *****  myblog   < /home/zhangy/blog/database_bak/myblog.sql
这种方法,我以前经常现在很少用了,因为很容易产生乱码,因为:
a,导出数据库时,你如果忘了设置导出字符集的话,在导入的时候,就有可能会出问题.
b,假如,你导出时设置导出时设置了utf8的编码,但是你又把你的数据库现在的字符集改成了gb2312的.这样又会乱码。

2,用 source 语句例如:

mysql -u dbadmin -p
use myblog;
set names utf8;  #这里的字符集根你的将要导入的数据库的字符集一至。
source /home/zhangy/blog/database_bak/myblog.sql;

分类: [Linux](http://www.cnblogs.com/hongchenok/category/427182.html)

删除数据库


执行命令drop databases 数据库名;

删除数据库中的表同理

执行命令DROP TABLE tbl_name;  或者是  DROP TABLE IF EXISTS tbl_name;

更新

update table set feild = value;

配置权限

进入Mysql,然后输入如下的语句:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

FLUSH PRIVILEGES;

上面的%可以改成一个具体的IP地址,这样就只允许这个IP访问了。

配置监听IP

上面的配置是不够的。Mysql默认只监听127.0.0.1这个IP地址。所以需要更改/etc/mysql/mysql.conf.d/mysqld.cnf文件。
里面有一个bind-address=127.0.0.01,改成:

bind-address=0.0.0.0

重启mysql: service mysql restart
通过netstat -ant |grep mysql 来查看是否监听的IP地址变化了

MySQLdump常用
mysqldump -u root -p --databases 数据库1 数据库2 > xxx.sql


还原:系统命令行: MySQL -uroot -p123456 

常见选项:

--all-databases, -A: 备份所有数据库
--databases, -B: 用于备份多个数据库,如果没有该选项,mysqldump把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldum把每个名字都当作为数据库名。

--force, -f:即使发现sql错误,仍然继续备份
--host=host_name, -h host_name:备份主机名,默认为localhost
--no-data, -d:只导出表结构
--password[=password], -p[password]:密码
--port=port_num, -P port_num:制定TCP/IP连接时的端口号
--quick, -q:快速导出
--tables:覆盖 --databases or -B选项,后面所跟参数被视作表名
--user=user_name, -u user_name:用户名
--xml, -X:导出为xml文件

1.备份全部数据库的数据和结构

mysqldump -uroot -p123456 -A >F:\all.sql

2.备份全部数据库的结构(加 -d 参数)

mysqldump -uroot -p123456 -A-d>F:\all_struct.sql

3.备份全部数据库的数据(加 -t 参数)

mysqldump -uroot -p123456 -A-t>F:\all_data.sql

4.备份单个数据库的数据和结构(,数据库名mydb)

mysqldump -uroot-p123456 mydb>F:\mydb.sql

5.备份单个数据库的结构

mysqldump -uroot -p123456 mydb-d>F:\mydb.sql

6.备份单个数据库的数据

mysqldump -uroot -p123456 mydb-t>F:\mydb.sql

7.备份多个表的数据和结构(数据,结构的单独备份方法与上同)

mysqldump -uroot -p123456 mydb t1 t2>f:\multables.sql

8.一次备份多个数据库

mysqldump -uroot -p123456 --databases db1 db2>f:\muldbs.sql

还原部分分(1)mysql命令行source方法 和 (2)系统命令行方法

1.还原全部数据库:

(1) mysql命令行:mysql>source f:\all.sql

(2) 系统命令行: mysql -uroot -p123456 use mydb

mysql>source f:\mydb.sql

(2) mysql -uroot -p123456 mydb use mydb

mysql>source f:\multables.sql

(2) mysql -uroot -p123456 mydbsource f:\muldbs.sql

(2) 系统命令行: mysql -uroot -p123456

你可能感兴趣的:(mysql)