安裝mysql
sudo apt-get install mysql-server
這個應該很簡單了,而且我覺得大家在安裝方面也沒什麼太大問題,所以也就不多說了,下面我們來講講配置。
配置mysql
注意,在ubuntu下mysql預設是只允許本地訪問的,如果你要其他機器也能夠訪問的話,那麼需要改變/etc/mysql/my.cnf配置檔案了!下面我們一步步地來:
預設的mysql安裝之後根使用者是沒有密碼的,所以首先用根使用者進入:
$mysql -u root
在這裡之所以用-u root是因為我現在是一般使用者(firehare),如果不加-u root的話,mysql會以為是firehare在登入。注意,我在這裡沒有進入根使用者模式,因為沒必要。一般來說,對mysql中的資料庫進行操作,根本沒必要進入根使用者模式,只有在設定時才有這種可能。
進入mysql之後,最要緊的就是要設定mysql中的root使用者密碼了,否則,mysql服務無安全可言了。
mysql> grant all privileges on *.* to root@localhost identified by "123456";
注意,我這兒用的是123456做為root使用者的密碼,但是該密碼是不安全的,請大家最好使用大小寫字母與數字混合的密碼,且不少於8位。
這樣的話,就設定好了mysql中的root使用者密碼了。
設定好mysql的root密碼之後,使用以下命令進行登入
$mysql -u root -p 再輸入root密碼即可
設定好密碼之後,如果想再修改的話密碼的話,進入mysql輸入以下命令:
mysql> set password for root@localhost = password('admin10000.com');
上面例子將使用者root的密碼更改為admin10000.com
然後就用root使用者建立你所需要的資料庫。我這裡就以xoops為例:
mysql>create database xoops;
mysql>grant all privileges on xoops.* to xoops_root@localhost identified by "654321";
這樣就建立了乙個xoops_roots的使用者,它對資料庫xoops有著全部許可權。以後就用xoops_root來對xoops資料庫進行管理,而無需要再用root使用者了,而該使用者的許可權也只被限定在xoops資料庫中。
如果你想進行遠端訪問或控制,那麼你要做兩件事:
其一:mysql>grant all privileges on xoops.* to xoops_root@"%" identified by "654321";
允許xoops_root使用者可以從任意機器上登入mysql。
其二:$sudo gedit /etc/mysql/my.cnf
老的版本中
>skip-networking => # skip-networking
新的版本中
>bind-address=127.0.0.1 => bind-address= 你機器的ip
這樣就可以允許其他機器訪問mysql了。
修改mysql的字符集,使它能支援中文
charset 和 collation 有多個級別的設定:伺服器級、資料庫級、表級、列級和連線級
www.2cto.com
1.伺服器級
檢視設定:show global variables like 'character_set_server'; 和 show global variables like 'collation_server';
修改設定:在option file (/etc/mysql/my.cnf)裡設定:
[mysqld]
character_set_server=utf8
collation_server=utf8_general_ci
2. 資料庫級
檢視設定:select * from information_schema.schemata where schema_name = 'cookbook';
設定:
1.若沒有顯式設定,則自動使用伺服器級的配置
2.顯式設定:在建立庫時指定
create database playutf8 default character set latin1 collate latin1_swedish_ci;
www.2cto.com
3.表級
檢視設定:show create table course;
設定:
1.若沒有顯式設定,則自動使用資料庫級的配置
2.顯式設定:在建立表時指定
create table utf ( id int ) default charset=utf8 default collate=utf8_bin;
4.列級
檢視設定:show create table course;
設定:
1.若沒有顯式設定,則自動使用表級的配置
2.顯式設定:
create table table1(column1 varchar(5) character set latin1 collate latin1_german1_ci);
5.連線級別
檢視設定:
show variables like 'character_set_client'; # 服務端使用這個編碼來理解客戶端發來的statements
show variables like 'character_set_connection' ; # 我還不知道什麼意思,等看了mysql
原始碼再說
show variables like 'character_set_results'; # 服務端使用這個編碼回送結果集和錯誤資訊
設定:
客戶端在連線時可以指定這些引數;同時,服務端也提供了乙個global範圍的值,客戶端未指定這些引數時,服務端就使用這個global值。這個global值怎麼設定的? 我查遍了很多文件,似乎還沒看到設定的辦法 (有人說通過my.cnf,或者在啟動
mysqld時指定命令列引數,其實都是錯的)
其他的一些設定方法
Mysql安裝配置
系統環境 rhel5 最小化安裝,只安裝vi工具 核心 2.6.18 8.el5 cd usr local src tarbag tar xzvf mysql 5.1.38.tar.gz c software cd software mysql 5.1.38 configure prefix usr...
Mysql 安裝配置
my.ini 檔案內容如下 mysql 設定mysql客戶端預設字符集 default character set utf8 mysqld 設定3306埠 port 3306 設定mysql的安裝目錄 basedir f software tools mysql mysql 8.0.15 winx6...
MySQL安裝配置
mysql安裝配置 itstar 2.檢測本地是否有mysql已存在的包 rpm qa grep mysql 3.檢測本地是否有mariadb已存在的包 rpm qa grep mariadb 4.如果存在,則使用yum命令解除安裝 mariadb libs 5.5.56 2.el7.x86 64 ...