Mysql運維基礎操作

2021-09-02 22:34:02 字數 4974 閱讀 8997

1、新增環境變數

c:\mysql-5.6.39-winx64\bin
2、設定my.ini
basedir=c:\mysql-5.6.39-winx64

datadir=c:\mysql-5.6.39-winx64\data

sql-mode="no_auto_create_user,no_engine_substitution"

3、安裝mysql
管理員身份進cmd

$ cd c:\mysql-5.6.39-winx64\bin

$ mysqld -install

(如果安裝失敗,先執行安裝vcredist_x64)

$ net start mysql

$ mysql -uroot -p

1、配置檔案
編譯配置檔案my.cnf,在windows中為my.ini

[mysqld]

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

sql-mode="no_auto_create_user,no_engine_substitution"

2、登入資料庫
$ mysql -uroot -p -s /tmp/mysql.sock

注:-s引數指定sock登入

3、設定root密碼
方式一:

> set password for root@localhost = password('root');

方式二:

> use mysql

> update user set password=password("root") where user='root';

> flush privileges;

4、刪除資料庫
> drop database `db`;
5、建立資料庫設定編碼
> create database `db` default character set utf8 collate utf8_general_ci;
6、匯入資料庫
> use `db`;

> source /tmp/db.sql;

注:如果發生報錯有兩個可能。乙個是外來鍵限制,暫時先關閉檢查;另外是因為配置檔案的編碼原因(如下修改)。

[client]

default-character-set = utf8

[mysqld]

default-character-set = utf8

7、建立資料庫賬號及授權
1)如果語句一執行報錯,就嘗試語句二建立賬號。

語句一:

> create user 'user'@'localhost' identified by 'user_pwd';

語句二:

> insert into mysql.user(host,user,password) values("localhost","user",password("user_pwd"));

2)授權:

示例一:

> grant all on `db`.* to 'user'@'localhost';

示例二:

> grant process, file, super, replication client on *.* to 'nagios'@'192.168.1.1' identified by 'nagios';

給遠端使用者授權時注意設定密碼,否則連不上哦。

3)重新整理生效:

> flush privileges;

4)刪除使用者:

> delete from user where user='user' and host='localhost';

8、建立php檔案測試
<?php

header("content-type: text/html; charset=utf-8") ;

//set_time_limit(0);

//error_reporting( e_all&~e_notice );

$con = mysql_connect("localhost:3306","user","user_pwd");

if (!$con)

mysql_select_db("db", $con);

$result = mysql_query("select * from table");

while($row = mysql_fetch_array($result))

mysql_close($con);

9、資料庫改名
常見的主要有兩種方法:

1)如果所有表都是myisam型別的話,可以直接修改資料夾的名字。

$ service mysqld stop

$ mv db_name new_db_name

2)利用mysqldump命令從舊的資料匯出資料,再匯入新資料庫。

$ mysqldump -uroot -p db_name > db_name_dump.sql

$ mysql -uroot -p -e `create database new_db_name`

$ mysql -uroot -p new_db_name < db_name_dump.sql

$ mysql -uroot -p -e `drop database db_name`

10、常用語句
1)檢視建庫語句

> show create database `db`;

2)檢視表結構

> desc `table`;

3)檢視表型別(儲存引擎)

> show table status from `table`;

4)檢視資料庫預設編碼

> show variables like '%char%';

5)檢視資料庫所有使用者

> select distinct concat('user: ''',user,'''@''',host,''';') as query from mysql.user;

6)檢視某個使用者的許可權

> show grants for 'root'@'localhost';

7)條件匯出資料表

> mysqldump -uroot -proot `db` `table` --where="id>0 and id<100" > /tmp/table.sql

8)獲取最新的十條資料

> select * from `table` order by date desc limit 10;

9)格式化輸出查詢資料

> select * from mysql.user\g;

10)查詢資料表大小

> select concat(round(sum(data_length/1024/1024),2),'m') from information_schema.tables where table_schema=`db` and table_name=`table`;

11)檢視資料庫預設的儲存引擎

> show variables like '%storage_engine%';

12)檢視資料庫的所有資料表名

> select table_name from information_schema.tables where table_schema='資料庫';

11、匯出資料庫
1. 全量匯出資料庫

$ mysqldump --lock-all-tables --flush-logs --master-data=2 -uroot -proot `db` > db.sql

2. 增量匯出資料庫

1)執行增量備份的前提條件是mysql開啟binlog日誌功能,在配置檔案中加入

[mysqld]

log-bin=/db/mysql/data/log-bin/mysql-bin

「log-bin=」後的字串為日誌記載目錄,一般建議放在不同於mysql資料目錄的磁碟上。

2)使用flush-logs命令來建立新日誌

> flush-logs

3.根據編碼匯出資料庫

$ mysqldump -uroot -proot --default-character-set=utf8 `db` > db.sql

4.匯出匯入資料表

匯出:$ mysqldump -uroot -proot `db` `table` > /tmp/table.sql

匯入:$ mysql -uroot -proot `db` < /tmp/table.sql

5.匯出到cvs檔案

$ mysql -uroot -proot -e "select * from table" -ss | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > /tmp/table.csv

12、忘記資料庫密碼
1.暫停資料庫

$ /etc/init.d/mysqld stop

2.執行以下命令

$ /usr/local/mysql/bin/mysqld_safe --skip-grant-tables --user=root &

3.使用root進入資料庫,無需密碼

$ mysql -uroot -p

13、不同版本mysql的初始化命令
1.mysql5.7版本初始化

/usr/local/mysql/bin/mysqld --initialize --user=mysql

2.mysql5.6版本初始化

/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/db/mysql/data

mysql運維命令 mysql基礎操作命令

1.mysqladmin uroot p passwd 123456 修改密碼,需要輸入就的密碼 2.mysql uroot p 登入資料庫 3.show databases 顯示所有資料庫 4.use mysql 使用mysql資料庫 5.show tables 顯示表 6.drop databa...

mysql常用運維 mysql 運維常見操作

mysql密碼的恢復方法之一 1 首先確認伺服器出於安全的狀態,也就是沒有人能夠任意地連線mysql資料庫。因為在重新設定mysql的root密碼的期間,mysql資料庫完全出於沒有密碼保護的 狀態下,其他的使用者也可以任意地登入和修改mysql的資訊。可以採用將mysql對外的埠封閉,並且停止ap...

Linux運維基礎操作

ssh非對稱加密 有一對金鑰 公鑰 私鑰 公鑰加密 私鑰解密 配置免密登入 ssh keygen t rsa ssh copy id 192.168.0.10 ssh root 192.168.0.10 lrzsz mount options source target mount o loop d...