1. 如何初始化mysql資料庫
初始化mysql資料庫,在shell中運行以下命令:
cd /usr/local/mysql
mkdir sock
cd /usr/local/mysql/bin
初始化資料庫
./mysql_install_db--user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
或者# mysqld --initialize
(1)mysql如何設置默認資料庫擴展閱讀
mysql資料庫的備份
1、物理冷備份,需要在資料庫關閉狀態下進行,能夠較好的保證資料庫的完整性。一般用於非核心業務,這類業務一般都允許終端,物理冷備份的特點就是速度快,恢復操作簡單。通常通過直接打包資料庫文件夾(如:/usr/local/mysql/data)來實現
2、通過啟用二進制日誌進行增量備份,MySQL支持增量備份,進行增量備份時必須啟用二進制日誌。二進制日誌文件為用戶提供復制,對執行備份點後進行的資料庫更改所需的信息進行恢復。如果進行增量備份,需要刷新二進制日誌。
2. 如何設置mysql資料庫的路徑
MySQL默認的數據文件存儲目錄為/var/lib/mysql。假如要把MySQL目錄移到/home/data下需要進行下面幾步:x0dx0a1、home目錄下建立data目錄x0dx0acd /homex0dx0amkdir datax0dx0a2、把MySQL服務進程停掉x0dx0amysqladmin -u root -p shutdownx0dx0a3、把/var/lib/mysql整個目錄移到/home/datax0dx0amv /var/lib/mysql/home/data/x0dx0a這樣就把MySQL的數據文件移動到了/home/data/mysql下。x0dx0a4、找到my.cnf配置文件x0dx0a如果/etc/目錄下沒有my.cnf配置文件,請到/usr/share/mysql/下找到*.cnf文件,拷貝其中一個到/etc/並改名為my.cnf)中。命令如下:x0dx0ax0dx0a[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf/etc/my.cnfx0dx0ax0dx0a5、編輯MySQL的配置文件/etc/my.cnfx0dx0a為保證MySQL能夠正常工作,需要指明mysql.sock文件的產生位置。修改socket=/var/lib/mysql/mysql.sock一行中等號右邊的值為:/home/mysql/mysql.sock。操作如下:x0dx0ax0dx0avi my.cnf (用vi工具編輯my.cnf文件,找到下列數據修改之)x0dx0a# The MySQL serverx0dx0a[mysqld]x0dx0aport= 3306x0dx0a#socket = /var/lib/mysql/mysql.sock(原內容,為了更穩妥用「#」注釋此行)x0dx0asocket = /home/data/mysql/mysql.sock(加上此行) x0dx0ax0dx0a6、修改MySQL啟動腳本/etc/init.d/mysqlx0dx0a最後,需要修改MySQL啟動腳本/etc/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等號右邊的路徑改成你現在的實際存放路徑:home/data/mysql。x0dx0ax0dx0a[root@test1 etc]# vi/etc/init.d/mysqlx0dx0a#datadir=/var/lib/mysql(注釋此行)x0dx0adatadir=/home/data/mysql (加上此行) x0dx0ax0dx0a7、重新啟動MySQL服務x0dx0ax0dx0a/etc/init.d/mysqlstartx0dx0ax0dx0a或用reboot命令重啟Linuxx0dx0a如果工作正常移動就成功了,否則對照前面的7步再檢查一下。x0dx0a還要注意目錄的屬主和許可權。
3. 如何在MYSQL中設置一個默認的資料庫
1、mysql默認的有 mysql test information_schema performance_schema 2、創建用戶時候可以設定默認資料庫 mysql -uroot -p123456 -e"CREATE USER 'user1'@'localhost' IDENTIFIED BY '123456';" mysql -uroot -p123456 -e"GRANT ALL ON db01.* ...
4. MySql怎麼給列設置默認值 mysql修改默認值
1、首先新建一張表結構。
7、執行完畢再查詢表結構sp_help t_temp_test可以看到表的默認值已經被更改為字元串『123』。
5. mysql如何更改默認資料庫表名稱中 Yii2
常見的主要有三種方法:
如果所有表都是MyISAM類型的話,可以直接修改文件夾的名字。關閉mysql→把data目錄中的db_name目錄重命名為new_db_name→開啟mysql
新建資料庫,在新的資料庫里重命名所有舊資料庫中的表,再刪除舊的資料庫。具體操作命令如下:創建新的資料庫→重命名數據表名稱→刪除舊的資料庫。
CREATE DATABASE new_db_name;RENAME TABLE db_name.table1 TO new_db_name.table1,db_name.table2 TO new_db_name.table2;DROP DATABASE db_name;
利用mysqlmp命令從舊的數據導出數據,再導入新資料庫。具體操作命令如下:導出數據→創建新的資料庫→導入數據→刪除舊的資料庫。
mysqlmp -u root -p -h ip db_name > db_name_mp.SQLmysql -u root -p -h ip -e 「CREATE DATABASE new_db_name」mysql -u root -p -h ip new_db_name < db_name_mp.SQLmysql -u root -p -h ip -e 「DROP DATABASE db_name」
6. 如何更改在Ubuntu下的MySQL的默認資料庫存儲位置
CREATEDATABASEmysqldb
在默認的資料庫存儲位置下就會有個文件夾mysqldb。要操作資料庫首先得停止資料庫進程:
$sudo/etc/init.d/mysqlstop
本文以轉移到/home/mysql這個位置為例,下面命令將原有資料庫轉移到新位置:
$sudocp–R–p/var/lib/mysql/home/mysql
編輯MySQL配置文件:
$gksugedit/etc/mysql/my.cnf
在 gedit中找到datadir這一行,將後面等於號之後的內容更改為/home/mysql然後保存退出。自Ubuntu 7.10開始,
Ubuntu就開始使用一種安全軟體叫做AppArmor,這個安全軟體會在你的文件系統中創建一個允許應用程序訪問的區域(專業術語:應 用程序訪問控制)。如果不為MySQL修改AppArmor配置文件,永遠也無法為新設置的資料庫存儲位置啟動
資料庫服務。配置AppArmor:
$sudonano/etc/apparmor.d/usr.sbin.mysqld
在gedit中找到/var/lib/mysql/這兩行,注釋掉這兩行,在這兩行前分別添加一個符號#即可注釋,在這兩行之前或
之後加上下面內容:
/home/mysql/r,
/home/mysql/**rwk,
保存後退出,執行命令:
$sudo/etc/init.d/apparmorreload
返回Reloading AppArmor profiles : done.即可以重啟MySQL服務:
$sudo/etc/init.d/mysqlstart
至此MySQL資料庫存儲位置就更改完畢了。FAQ:
Q:當我運行$sudo /etc/init.d/apparmor reload卻返回信息
Skippingprofile/etc/apparmor.d/usr.sbin.mysqld~
:Warning.
gedit這樣子的命令來編輯usr.sbin.mysqld這個配置文件的,這兩個圖形界面文本編輯器會在相同位置生成一個
usr.sbin.mysqld~的文件,從而影響了AppArmor讀取配置文件,出現這個問題先刪除這個usr.sbin.mysqld~文件:
然後使用$sudo nano這個終端文本編輯器來編輯配置文件即可。
7. 如何更改MYSQL默認資料庫的目錄
1.停止資料庫服務:
使用/etc/init.d/mysql stop 或者 stop mysql
2. 在目標位置(/data)創建資料庫文件的目錄(如/mysqldb),並復制(如果不再使用默認的位置,則可以直接mv原先資料庫文件到新目錄下)原先的資料庫文件目錄到該目錄下:
cd /data
mkdir mysqldb
cp -r /var/lib/mysql /data/mysqldb/
經過一段時間的等待後,在/data/mysqldb/下面就有了原先默認的mysql資料庫文件目錄的拷貝「/mysql」
3.修改my.cnf文件
# vim /etc/mysql/my.cnf
將datadir = /var/lib/mysql 改為 datadir = /data/mysqldb/mysql
另外由於當前my.cnf 中的socket = /var/run/mysqld/mysqld.sock(而並非像網上所說的sock = /var/lib/mysql/mysql.sock),即socket的位置並不在資料庫文件所在的位置,因此可以不做類似網上其他網頁所說的,要使用以下的命令做一個mysql.sock 鏈接:
ln -s /data/mysqldb/mysql/mysql.sock /var/lib/mysql/mysql.sock (需要從/home/data/mysql下復制一份過來)
4. 修改資料庫的許可權:
# chown -R mysql:mysql /data/mysqldb/mysql/ ← 改變資料庫文件目錄的歸屬為mysql
# chmod 700 /data/mysqldb/mysql/whois/ ← 改變資料庫目錄whois的屬性為700
# chmod 660 /data/mysqldb/mysql/whois/* ← 改變資料庫中數據表的屬性為660
5. 修改文件usr.sbin.mysqld
# vim /etc/apparmor.d/usr.sbin.mysqld
把
/var/lib/mysql r,
/var/lib/mysql/** rwk,
改成
/data/mysqldb/mysql/ r,
/data/mysqldb/mysql/** rwk,
注意:沒有該步驟的話,將導致資料庫服務無法重啟,好像在重啟,但是一直卡住無反應。
6.啟動mysql伺服器
/etc/init.d/apparmor restart
/etc/init.d/mysql restart (或者使用 restart mysql)