While MySQL is absolutely a good database for a business/personal use (website, etc) it is in no way comparable to MS Access in terms of end-user ease of use. People may argue with me on this one, but think about it...Access lets you draw little lines between tables to represent table joins, and build your queries by selecting fields from drop-down menus. Give me a break, you don't even need to know what "SQL" means to use it. There are absolutely exceptions to this, people who are good with Access will p'bly be good with any database, but I think my point stands.
There are a few GUIs out there that you can use. The one we use at work is the browser-only interface of PhpMyAdmin, which is "eh, ok I guess", but mysql's native interface is commandline-only, and I vastly prefer that. It's faster and straightfoward, and not as slow as a web interface inevitably is. Search google for "MySQL GUI", though, and you can look thru the results to see if anything suits you.
It is a RDBMS, but It is *not* Access. Access is a database with a really good, user-level frontend. MySQL is simply a database: it holds data, and you can query it via a SQL query to get at what you want. Perl's got a good DBI module that interfaces really easily with MySQL (hence the frequent website usage).
Access is still one of the not-quite-reproducable parts of Office, and one of the things that Microsoft got very, very right
So,
How do you create a database? For example,
"CREATE TABLE tablename(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
name VARCHAR(30),
age INT)" will give you a table named "tablename" with a field "id" as an auto-incrementing primary key, a field "name" which is a character field of length 30, and a field "age" which holds an integer.
Can you link the tables? Yes - look up the SQL "join" command, or look into subselects.
define primary keys? Yes
run a query which will access multiple tables? Yes, see question 1
can you search it? Yes, that's what SQL was written to do
then create a report from that query? Yes - pretty sure you can export your query to a .csv file, and then pull that into any Excel-like app (i.e. OpenOffice). Although if OO works like ginetta says it does, you could just directly connect and not need to do the export.
create a form which you can use to go through that data? Yep, see previous answer.