linux mysql运维_Linux运维常用的 MySQL基础命令
# MySQL基礎命令
-------------
### 創建MySQL庫,授權。
>create database?mysqldb?character set utf8;
>grant all privileges on?mysqldb.* to 'mysqluser'@'localhost' identified by 'mysqlpasswd';
>flush privileges;
創建了mysqldb數據庫,創建mysqluser用戶,并授權mysqldb的所有權限。___________________________________________________________________________
###? 設置遠程訪問MySQL
>grant all privileges on?mysqldb.* to 'mysqluser'@'%' identified by 'mysqlpasswd';
#?mysqluser是用戶名,%代表任意主機,'mysqlpasswd'指定的登錄密碼(這個和本地的密碼可以設置不同的,互不影響)
>flush privileges; # 重載系統權限
設置只允許192.168.1.2的主機用root用戶訪問MySQL
>grant all privileges on *.* to 'root'@'192.168.1.2' identified by '123456' with grant option;
>flush privileges;
設置允許192.168.1.1/24網段的所有主機用root用戶訪問MySQL
>grant all privileges on *.* to 'root'@'192.168.1.%' identified by '123456' with grant option;
flush privileges;
查看所有MySQL用戶
>SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
查看數據庫中具體某個用戶的權限
>show grants for 'root'@'%';
>select * from mysql.user where user='root' \G
----------------------------------------------------
設置防火墻,讓 3306 端口對外可訪問
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
iptables -nL
service iptables save
_________________________________________________________________
### MySQL導出導入
導出數據庫用mysqldump命令(注意mysql的安裝路徑,即此命令的路徑):
-S 參數 指定/tmp/mysql.sock
1、只導出表結構( -d 參數)
mysqldump -u用戶名 -p密碼 -d 數據庫名 > 數據庫名.sql
導出
#mysqldump -uroot -p'password' -dmysqldb > abc.sql
導入
mysql ?-uroot -p"password"mysqldb < abc.sql
2、數據庫導入導出:
mysqldump -u用戶名 -p密碼 ?數據庫名 > 備份文件名.sql
導出
#mysqldump -uroot -p'password' mysqldb > bak.sql
導入
#mysql -uroot -p'password' mysqldb < bak.sql
導出全部數據庫(包括用戶名密碼等.) mysqldump -uroot -p --all-databases > sqlfile.sql
3.MySQL壓縮備份與恢復
mysqldump -u用戶名 -p密碼 數據庫名 ? | gzip > ?備份后的名稱
備份
mysqldump -uroot -p'password' -S /tmp/mysql.sock ?mysqldb | gzip > backupfile.sql.gz
恢復
gunzip < backupfile.sql.gz | mysql -u'root' -p'password' -S /tmp/mysql.sock mysqldb
4.對單個表的備份與還原,
對mysqldb庫的 app_info表進行備份恢復,
備份
mysqldump -u"root" -p"password" -S /tmp/mysql.sock mysqldb app_info ?> app_info.sql
恢復
mysql ?-u"root" -p"password" -S /tmp/mysql.sock mysqldb < app_info.sql
_________________________________________________________________________
###?重置MySQL root密碼
mysqladmin?-uroot password 'mysql_pass'; (設置mysql的root密碼)
停止正在運行的MySQL進程
netstat -anput | grep mysql
ps -ef | grep mysql
先查看mysql的pid,然后殺掉?;蛘遱ervice mysql stop停止。
kill pid
2.以安全模式啟動MySQL
mysqld_safe --skip-grant-tables &
注意mysqld_safe 命令的路徑
3.更改MySQL數據庫root密碼
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
MySQL5.6
update user set password = Password("new_pass") where User = 'root';
MySQL5.7
update user set authentication_string = Password("new_pass") where User = 'root';
4.重啟MySQL
service mysql restart
———————————————————————————————————
整理了幾條MySQL的命令,這些都是我在工作中常用的。也非常實用。
背黑鍋我們最專業
------運維
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的linux mysql运维_Linux运维常用的 MySQL基础命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql8.0 linux安装自启动_
- 下一篇: mysql5.6.28安装教程百度经验_