mysql数据库基本操作以及备份
1.基本查看及登录:
创新互联公司专注于企业成都全网营销推广、网站重做改版、涪城网站定制设计、自适应品牌网站建设、H5页面制作、商城网站建设、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为涪城等各大城市提供网站开发制作服务。
MySQL -uroot -p
show databases; ##查看数据库
use mysql; ##进入数据库mysql
show tables; ##查看表
desc user; ##查看表的结构,表头
2.表的操作:查,改,删,增
select * from user \G; ##查询user表中的所有数据记录
select host,user,password from user; ##指定user表的字段进行查询
update mysql.user set password=password("123123") where user="root"; ##修改root密码
delete from mysql.user where user=""; ##删除用户为空的数据记录
create database auth; ##创建库auth
create table auth.users(user_name char(16) not null, user_passwd char(48) default '',primary key (user_name)); ##创建表auth.users
insert into auth.users values('hehe','pwd@123'); ##新增记录
drop table auth.users; ##删除表users
drop database auth; ##删除库auth
3.mysql的权限管理
grant all on 库.* to用户@客户机地址identified by‘密码’;
show grants for 用户@客户机地址;
revoke 权限列表on 库.* from用户@客户机地址;
grant select,delete on mysql.user to 'useradm'@'192.168.100.100' identified by '123123';
show grants for'useradm'@'192.168.100.100';
revoke select,delete on mysql.user from'useradm'@'192.168.100.100';
delete from mysql.user where user='useradm';
flush privileges;
4.备份与恢复mysql
登录到mysql
create database auth;
Quit
/etc/init.d/mysqld stop
cd /usr/local/mysql/data
cp -rf mysql/user.* auth/
chown mysql:mysql auth/ -R
chmod 755 auth
chmod 660 auth/*
/etc/init.d/mysqld start
登录mysql
use auth;
show tables; ##能看到user表,desc能查看结构,select
mysql的冷备份:
/etc/init.d/mysqld stop
tar Jcf /opt/mysql-bak-$(date +%F).tar.xz /usr/local/mysql/data
模拟故障:
/etc/init.d/mysqld start
mysql登录
drop database auth;
quit;
/etc/init.d/mysqld stop
mysql恢复:
tar Jxf /opt/mysql-bak-*.tar.xz -C /root
cd /root/usr/local/mysql/data
cp -rf auth/ /usr/local/mysql/data
chown mysql:mysql /usr/local/mysql/data/auth -R
cd /usr/local/mysql/data
chmod 755 auth
chmod 660 auth/*
/etc/init.d/mysqld start
mysql登录验证
show databases; ##数据已经恢复
在线备份;mysqldump
netstat -utpln |grep 3306 ##确保mysql启动
mysqldump -uroot -p123123 --all-databases >/opt/all.sql #备份
mysqldump -uroot -p123123 --all-databases --lock-talbes=0 >/opt/all.sql
mysql -uroot -p123123
在bash中操作mysql:去交互
vi /root/test.sh
mysql -uroot -p123123 < create database hehe; END :wq chmod +x /root/test.sh /root/test.sh 5.mysql忘记密码的解决方案: vim /etc/my.cnf [mysqld] skip-grant-tables ##添加该行,跳过密码验证 :wq /etc/init.d/mysqld restart mysql ##登录后操作 update mysql.user set password=password("123123") where user="root"; ##修改root密码 Exit vim /etc/my.cnf [mysqld] #skip-grant-tables ##注释该行 :wq /etc/init.d/mysqld restart 6.单独管理用户: 用户管理 mysql>use mysql; mysql> select host,user,password from user ; mysql>create user linuxfan identified by '123123'; ##identified by 会将纯文本密码加密作为/散列值存储 mysql>rename user linuxfan to fage;##mysql 5之后可以使用,之前需要使用update更新user表 mysql> set password for fage=password('123'); ##:需在mysql.user表中使用 mysql> update mysql.user set password=password('123') where user='fage';## 指定表中数据的根位置,无需进入表。 mysql> show grants for fage;查看用户权限 mysql> grant select on mysql.user to fage; ##赋予权限 mysql> revoke select on mysql.user from fage; ##如果权限不存在会报错 mysql>drop user fage; ##mysql5之前删除用户时必须先使用revoke删除用户权限,然后删除用户,mysql5之后drop命令可以删除用户的同时删除用户的相关权限 7.设置mysql5.5显示中文名: vi /etc/my.cnf [client] default-character-set = utf8 [mysqld] character-set-server = utf8 init_connect='SET NAMES utf8' :wq /etc/init.d/mysqld restart
网页标题:mysql数据库基本操作以及备份
转载注明:http://scyanting.com/article/igdocd.html