您好,登錄后才能下訂單哦!
1.基本查看及登錄:
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 </opt/all.sql ##恢復
在bash中操作mysql:去交互
vi /root/test.sh
mysql -uroot -p123123 <<END
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
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。